泊坞窗SSH服务器连接被拒绝
问题描述:
我有以下Dockerfile我的容器:泊坞窗SSH服务器连接被拒绝
FROM ubuntu:latest
RUN apt-get upgrade
RUN apt-get update
RUN apt-get -y install openssh-server
CMD tail -f /dev/null
然而,当我建立并运行它,它说,连接被拒绝。我尝试了几乎所有我能找到的解决方案,其中包括“ufw allow”,但它不能正常工作,因为它告诉我需要成为root用户(我该怎么做Dockerfile?)。
我需要访问容器恰好是这样的:
ssh <someUsername?>@containerIP
PS:我知道有其他的方式连接到一个码头工人的容器,但我需要使用SSH连接等等等等不一个选项。
编辑:这似乎是因为sshd没有运行,因为它不显示如果我运行“ps -A”。
答
码头集装箱隔离一个应用程序或命令,在你的情况下,他们隔离命令tail -f /dev/null
这将保持容器运行,但没有做任何有用的事情。如果你想要一个sshd服务器上运行,你需要启动,作为您的前景命令:
CMD ["/usr/sbin/sshd", "-D"]
有已建成的这对码头工人枢纽不少图片,包括https://hub.docker.com/r/trsouz/ssh/和https://hub.docker.com/r/rastasheep/ubuntu-sshd/。
答
在您的docker文件中,您只安装了openssh-server并期望它能正常工作。为了使SSH工作,你将基本上需要添加用户,创建密码,编写sshd规则并公开该服务。如果你这样做,你可以ssh到你的码头集装箱。
这里是参考。 https://docs.docker.com/engine/examples/running_ssh_service/
希望这会有所帮助。