Docker学习系列从零开始之制作SSH镜像【四】
1、创建存放dockerfile的文件夹执行命令如下:mkdir dockercd dockermkdir sshImagescd sshImagestouch Dockerfilevi Dockerfile2、修改Dockerfile文件Dockerfile内容如下
·
1、创建存放dockerfile的文件夹
执行命令如下:
mkdir docker
cd docker
mkdir sshImages
cd sshImages
touch Dockerfile
vi Dockerfile
2、修改Dockerfile文件
Dockerfile内容如下:
FROM centos MAINTAINER linzf <282245889@qq.com> # 安装openssh-server和sudo软件包,并且将sshd的UsePAM参数设置成no,同时设置sshd的连接的密码是123456 RUN yum install -y openssh-server sudo RUN sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config RUN echo "root:123456" | chpasswd #下面这两句比较特殊,在centos6上必须要有,否则创建出来的容器sshd不能登录 #将基础镜像的/etc/ssh/目录下的ssh_host_rsa_key ssh_host_rsa_key.pub #和ssh_host_dsa_key ssh_host_dsa_key.pub 删除或者下面的不执行 RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key #启动sshd服务并且暴露22端口 RUN mkdir /var/run/sshd EXPOSE 22 CMD ["/usr/sbin/sshd", "-D"]
3、使用docker build命令来创建镜像
sudo docker build -t "centos6.5-ssh" .
4、查看是否创建成功并启动镜像
docker images
docker run -d -P --name=test centos6.5-ssh
5、查看是否创建成功
docker ps命令查看当前从容器中映射出来的端口如下:
可以看到懂容器centos6.5-ssh中22端口映射到当前系统的32768端口,因此我们可以直接用SSH来连接我们的centos6.5-ssh镜像
6、SSH远程连接镜像
直接在运行docker的linux服务器运行以下命令:
ssh 192.168.44.128 -p 32768
先会让你输入密码,密码输入正确则进入了我们的centos-ssh镜像中,表面我们的镜像的ssh已经配置成功了。
更多推荐
已为社区贡献5条内容
所有评论(0)