运行可放入的本地docker容器
我正在尝试测试对Capastrano应用程序的一些更改。我希望在本地运行一个docker容器,我的应用程序可以通过SSH连接到该容器,这样我就可以对该容器运行命令并观察发生了什么 我在看。我可以通过ssh运行可放入的本地docker容器,docker,capistrano,Docker,Capistrano,我正在尝试测试对Capastrano应用程序的一些更改。我希望在本地运行一个docker容器,我的应用程序可以通过SSH连接到该容器,这样我就可以对该容器运行命令并观察发生了什么 我在看。我可以通过sshssh进入root@localhost-p 49154,但我需要能够通过它的IP和端口22,例如ssh访问root@172.17.0.2但这将超时 我想我需要做一些docker网络类型的工作来让它工作。有什么想法吗?你可以试试: docker exec -it <container_id&
ssh进入root@localhost-p 49154
,但我需要能够通过它的IP和端口22
,例如ssh访问root@172.17.0.2
但这将超时
我想我需要做一些docker网络类型的工作来让它工作。有什么想法吗?你可以试试:
docker exec -it <container_id> bash
docker exec-it bash
这将基本上为您提供容器的外壳,使您能够查看容器内部的情况并对其进行调试。阅读Capastrano文档后,我意识到我可以在定义角色时提供端口。因此,我可以使用
docker run -d -P -p 32770:22 --name server rastasheep/ubuntu-sshd:14.04
并附上:
role :cost_app, "root@localhost:32770"
您需要对映像布局进行一些重大修改,以使ssh能够进入映像,并进行一些复杂的设置以安全地管理凭据。(用户密码和主机密钥都不能存储在映像中。)虚拟机可能更适合此设置。启动容器时,添加密钥也很方便
ssh copy idroot@localhost-p 32770