Docker创建带有ssh服务的centos容器
配置镜像
# 拉取centos基础镜像
docker pull centos
# 创建容器ssh-centos,将容器22端口映射到主机10022
docker run -d -p 10022:22 --name ssh-centos --privileged=true centos /usr/sbin/init
# 进入容器
docker exec -it ssh-centos /bin/bash
# 更新yum源
yum update -y
# 安装常用软件
yum install net-tools
# 安装ssh
yum install openssh
yum install openssh-server
# 使用systemctl管理sshd
systemctl start sshd
systemctl status sshd
# 设置密码
yum install passwd
passwd
输入密码,需要符合安全策略
# 然后就可以使用CRT或者putty进行远程连接了。
连接的地址为主机的地址,端口为映射端口10022
示例:
重新打包镜像
将这个镜像重新打包一下以后就不需要每次都这样配置了。
# 使用docker commit创建镜像,创建成功返回ID号
docker commit -m "sshd base on centos" -a "chuck" ssh-centos centos8:latest
# docker images,与原镜像相比增加了几百兆,应该是安装太多东西了。
centos8 latest 665051cfeb24 6 seconds ago 525MB
# 尝试使用新镜像创建容器
docker run -d -it -h centos8 -p 10022:22 --name centos8 --privileged=true centos8 /usr/sbin/init
成功登陆: