Docker : 基于官方Centos镜像封装带ssh的自定义镜像
1.从官方库拉取最新的centos镜像
docker pull centos
2.创建容器实例并登入shell
docker run -i -t centos:7 /bin/bash
3.安装开启ssh必要的软件
yum install passwd openssl openssh-server -y
4.配置ssh
ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N '' 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 '' sed -i "s/#UsePrivilegeSeparation.*/UsePrivilegeSeparation no/g" /etc/ssh/sshd_config sed -i "s/UsePAM.*/UsePAM no/g" /etc/ssh/sshd_config
5.修改root密码
passwd root
6.退出容器实例后打包镜像
docker ps -a (查看容器id) docker commit 82ae4218ed24(容器id) coderstory/centos-ssh(镜像的名称) docker rm 82ae4218ed24 (删除之前创建的实例)
7.创建新镜像的实例
docker run -d -p 10022:22 coderstory/centos-ssh/usr/sbin/sshd -D
-p 10022:22:绑定本地端口 将容器实例中的22端口和宿主系统的10022端口绑定
coderstory/centos-ssh:需要实例化的镜像的名称
8.ssh连接容器实例
ssh root@127.0.0.1 -p 10022