This is a quick start guide to get a test server up and running in less than 5 minutes with docker-compose.
To run this quick start please make sure you have a working Docker environment and a working docker-compose.
Alternatively, you can also set up a Kubernetes cluster. We recommend setting up Docker Desktop, k3s, or Kubernetes in Docker.
Please download the contents of the example directory from the source code repository.
For a Docker environment run docker-compose up -d
in the downloaded quick-start
(this) directory.
For a Kubernetes environment run kubectl apply -f kubernetes.yaml
in the quick-start
(this) directory.
Run ssh foo@localhost -p 2222
on the same machine via a new terminal window. This is your test client. You should be able to log in with any password.
Alternatively you can also try the user busybox
to land in a Busybox container.
Once you're done, you can shut down the server using the docker-compose down
, then remove the images using docker-compose rm
and remove the guest image by running docker image rm containerssh/containerssh-guest-imag
for a Docker environment, or kubectl delete -f kubernetes.yaml
for the Kubernetes environment.
The authentication and configuration server included in the example is a dummy server and lets any password in. To actually use ContainerSSH, you will have to write your own authentication server. We recommend reading the architecture overview before proceeding.
👉 Tip: You can pass the CONTAINERSSH_ALLOW_ALL
environment variable to the demo auth-config server to build a honeypot.