Docker : Access to Containers2014/06/16
If you'd like to access to services like HTTP or SSH which is running in Containers as a daemon, set like follows.
|||For exmaple, use a Container which has sshd.|
# start the Container and connect to the shell session
# map the port of Host and the port of Container with "-p xxx:xxx"
docker run -it -p 8081:22 my_image/ubuntu_sshd /bin/bash
# start sshd & create a user for connecting with SSH and exit the Container
* Starting OpenBSD Secure Shell server sshd [ OK ]
# exit with Ctrl+p, Ctrl+q
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS dae3e99c727d my_image/ubuntu_sshd:latest /bin/bash 53 seconds ago Up 53 seconds 0.0.0.0:8081->22/tcp
# connect to the port configured with SSH
ssh ubuntu@localhost -p 8081
The authenticity of host '[localhost]:8081 ([::1]:8081)' can't be established.
ECDSA key fingerprint is xx:xx:xx:xx:xx:c1:a6:e5.
Are you sure you want to continue connecting (yes/no)?
Warning: Permanently added '[localhost]:8081' (ECDSA) to the list of known hosts.
Welcome to Ubuntu 14.04 LTS (GNU/Linux 3.2.0-58-generic x86_64)
* Documentation: https://help.ubuntu.com/ The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law.ubuntu@dae3e99c727d:~$
# just logined to the Container