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

点赞
  1. Xinzz说道:
    Sogou Explorer Windows 7

    用 Dockerfile 构建比较好一点,而已可以直接在阿里镜像或者网易蜂巢构建

发表评论

电子邮件地址不会被公开。必填项已用 * 标注