Use this Dockerfile / -image to start a sshd-server upon a lightweight Alpine container.
Thanks to Travis-CI this image is pushed weekly and creates new tags if there are new versions available.
For recent tags check Dockerhub.
- Always installs the latest OpenSSH-Version available for Alpine
- Password of "root"-user can be changed when starting the container using --env
- You can choose between ssh-keypair- and password auth
This image is designed to be as slim and vanilla as possible.
If you need additional Tools like git
or bash
-shell, I definetly recommend to build your own image on top of alpine-sshd
:
FROM hermsi/alpine-sshd:latest
RUN apk add --no-cache --upgrade \
git \
bash
$ docker run --rm \
--publish=1337:22 \
--env ROOT_PASSWORD=MyRootPW123 \
hermsi/alpine-sshd
After the container is up you are able to ssh in it as root with the in --env provided password for "root"-user.
$ ssh root@mydomain.tld -p 1337
$ docker run --rm \
--publish=1337:22 \
--env KEYPAIR_LOGIN=true \
--volume /path/to/authorized_keys:/root/.ssh/authorized_keys \
hermsi/alpine-sshd
After the container is up you are able to ssh in it as root with a private-key which matches the provided public-key in authorized_keys for "root"-user.
$ ssh root@mydomain.tld -p 1337 -i /path/to/private_key
I built this image in order to use it along with a nginx and fpm-php container for transferring files via sftp. If you are interested in a Dockerfile which fulfills this need: this way