我正在尝试执行此操作:
https://hub.docker.com/r/rastasheep/ubuntu-sshd/
即,我跑:
sudo docker run -d -P --name test_sshd rastasheep/ubuntu-sshd:16.04
然后
sudo docker port test_sshd 22
我可以看到类似的东西:
0.0.0.0:49154
我可以跑:
ssh root@localhost -p 49154
但是一旦我重新启动计算机,我就会看到:
sudo docker port test_sshd 22
Error: No public port '22/tcp' published for test_sshd
你能帮我一把吗?
答案 0 :(得分:0)
选项 -P 动态且随机地绑定端口,这就是您需要使用docker port
关联端口的另一个步骤的原因。
我会用一个免费的静态端口来访问这个容器的ssh端口:
docker container run -d -p 2222:22 --name test_sshd rastasheep/ubuntu-sshd:16.04
ssh root@localhost -p 2222
重新启动 dockerd 时,此端口设置仍然存在。