前言:上篇文章我们搭建好了Docker,下面我们开始使用Docker创建镜像,Docker命令就不介绍了。这里宿主是Windows10,cmd的管理和后期文件的复制不是很方便,将创建支持SSH的CentOs镜像。
1、启动Docker服务
运行我们安装好的Docker for Windows,这里我关闭了开机启动(太耗性能)
2、下载Docker镜像-CentOs
版本根据实际情况选择,这里我直接下载默认版本
docker pull centos
镜像下载完毕(此时我们只是加载完成了一个镜像,还没有创建容器)
3、创建并启动CentOs的Docker容器
docker run -it --name=cenotsSsh centos /bin/bash
--name=【容器的名称】 镜像的NAMES 正常启动完成会进入
4、升级下系统
yum -y update
5、安装SSH Server(openssh-server)
yum install -y openssh-server
6、编辑配置SSH配置文件 /etc/ssh/sshd_config,关闭密码的安全验证UsePAM “no”
sed -i "s/UsePAM.*/UsePAM no/g" /etc/ssh/sshd_config
7、生成秘钥对,这步骤可以省略...
ssh-keygen -t rsa -b -f /etc/ssh/ssh_host_rsa_key
会提示2次,直接按回车过就OK
生成秘钥位置 cat /etc/ssh/ssh_host_rsa_key.pub
cat /etc/ssh/ssh_host_rsa_key.pub
8、为容器设置密码
echo "root:123456"|chpasswd
9、启动SSH
/usr/sbin/sshd -D
可能会提示如下:
ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N ''
再次启动
/usr/sbin/sshd -D exit //退出容器
10、启动容器并创建新的镜像
docker ps -a
创建新镜像
docker commit 9182d652d4ee cenots-ssh
//cenots-ssh=新的镜像名称
查看镜像: docker images
11、运行容器指定端口
docker run -p : -d cenots-ssh /usr/sbin/sshd -D
这里我直接用的本机IP(账号密码用刚刚创建的 root:123456)
登陆完成
详细IP可以查看,效果一样的