Docker 容器 SSHOpen 无法保持运行

Docker 容器 SSHOpen 无法保持运行

我正在尝试创建一个包含 openssh 服务器的映像,并在调用运行命令时启动它。我已采取以下步骤:

docker pull ubuntu
docker run -d -it ubuntu bash
apt-get update
apt-get install openssh-server -y
exit
docker ps -a 
docker commit <CONTAINER ID> myimg
// tried the following three, same results
docker run -d myimg "/usr/sbin/sshd"
docker run -d myimg /usr/sbin/sshd -D
docker run -d myimg service ssh start

这会运行图像然后立即退出,我正在尝试让服务跟上。我做错了什么?

答案1

搞清楚了。安装 openssh-server 后,必须创建一个目录。

错误:Missing privilege separation directory: /var/run/sshd

docker pull ubuntu
docker run -it ubuntu /bin/bash
apt-get update
apt-get install openssh-server -y
mkdir /var/run/sshd
service ssh stop
exit
docker ps -a 
docker commit <CONTAINER ID> myimg
docker run -d -p <PORT>:22 myimg /usr/sbin/sshd -D

相关内容