本文主要是记录如何利用Docker创建一个可以进行SSH连接的容器,关于Docker的基础命令大家可以自行找官方文档学习。创建Docker镜像主要有两种方式,一种是docker commit
,另一种是Dockerfile
,第一种的弊端非常明显,因为它不能适应快速变化的部署环境,需要进行手动操作,然后提交到镜像当中;而后一种则可以快速适应变化,只要有Docker的地方它就可以很好地运行。所以,我们来看一下如何利用CentOS7来创建一个可以连接SSH的容器吧!
1 | # This Dockerfile is based on centos image |
在执行这个脚本之前,需要在宿主机上先生成一个ssh文件,然后拷贝到当前目录[/root/sshd
]
1 | sudo ssh-keygen -t rsa |
编译镜像:
1 | docker build -t sshd . |
注意结尾是有一个.
号的,表示当前目录。
然后再执行脚本:
1 | docker run -d -p 2222:22 sshd |
最后在本地通过ssh就可以进入容器了:
1 | ssh root@localhost -p 2222 |