# Jumpbox Docker container * Debian slim based image * OpenSSH server * User/group creation on startup # Supported tags and respective `Dockerfile` links - [`latest`](https://git.nethuis.nl/pommi/docker-jumpbox/Dockerfile) # Usage ## Environment variables | Key | Format | Description | | --- | --- | --- | | `ROOT_AUTHORIZED_KEYS` | `/path/to/file` | Path to file that contains the public SSH keys that can be used for root user authentication. This file will be copied to `/root/.ssh/authorized_keys` | | `HOSTKEYS` | `/path/to/hostkey;...` | Specifies a (semi-colon separated list of) file(s) containing a private host key used by SSH. | | `USERADD` | `{username}:{uid}:{gid};...` | Create user account(s) on startup | | `GROUPADD` | `{groupname}:{gid};...` | Create group account(s) on startup | | `BASE_DIR` | `/home` | Basedir used for user account creation (Default: `/home`) | ## docker run ``` $ docker run -it \ --name jumpbox \ -v $(pwd)/jumpbox:/var/lib/jumpbox \ -e "ROOT_AUTHORIZED_KEYS=/var/lib/jumpbox/authorized_keys" -e "HOSTKEYS=/var/lib/jumpbox/ssh_host_ed25519_key;/var/lib/jumpbox/ssh_host_rsa_key" -e "USERADD=jumpbox:1000:1000" -e "GROUPADD=jumpbox:1000" -p 1022:22 \ pommib/jumpbox:latest ``` ## docker-compose ``` version: "3" services: jumpbox: container_name: jumpbox image: pommib/jumpbox:latest ports: - "1022:22/tcp" volumes: - '${PWD}/jumpbox:/var/lib/jumpbox' environment: ROOT_AUTHORIZED_KEYS: /var/lib/jumpbox/authorized_keys HOSTKEYS: /var/lib/jumpbox/ssh_host_ed25519_key;/var/lib/jumpbox/ssh_host_rsa_key USERADD: jumpbox:1000:1000 GROUPADD: jumpbox:1000 ```