Dockerfile SSH服务安装(CentOS7)
1、关闭宿主主机的SELinux
如果不关闭宿主主机的SELinux服务,在下面修改容器内服务器的密码,会出现错误。修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启服务器。
# 编辑SELinux配置文件 vi /etc/selinux/config
# 重新启动服务器 reboot
2、宿主主机建立Dockerfile文件
在操作之前,要新创建一个空文件夹,用来存储Dockerfile文件,否则会出现一些问题。本例会创建/home/sshd_centos7文件
# 进入到家目录 cd /home # 创建Dockerfile存放的文件夹 mkdir sshd_centos7 # 进入到新创建的文件夹 cd sshd_centos7 # 使用vi命令创建Dockerfile文件 vi Dockerfile
进入到文件后,编辑如下内容:
# 设置镜像,本机要存在的镜像 FROM centos:7.2 # 备注一下作者信息 MAINTAINER lixh (admin@lixh.cn) # 开始下载 passwd openssh-server RUN yum -y install passwd openssh-server;yum clean all # 修改root密码 RUN echo "1234567" | passwd --stdin root # 开放22号端口 EXPOSE 22 # 启动SSH CMD /usr/sbin/sshd -D
如下图所示:
3、使用build打包成image服务
# 打包,注意后面的“.” docker build -t sshd:dockerfile .
如果打包成功,则显示打包成功信息,如下图所示。
4、执行测试
# 后台执行sshd:dockerfile docker run -d -p 10022:22 sshd:dockerfile # 远程连接测试 ssh root@192.168.0.113 -p 10022