定制centos7镜像

为学习ansible准备,开启sshd服务,及systemctl

基于官方centos镜像定制,下载

1 docker pull centos

以下文件,单独创建个目录,在此目录执行。不解释

创建docker file文件

 1 [root@localhost]# more dockerfile 
 2 FROM centos
 3 
 4 MAINTAINER  user   email 
 5 
 6 #安装sshd服务
 7 #RUN yum update -y                        #(可选)
 8 RUN yum install -y openssh-server vim   passwd  telnet net-tools
 9 RUN echo "root:root" | chpasswd       #第二个root为密码
10 RUN mkdir -p /var/run/sshd
11 RUN mkdir -p /root/.ssh
12 RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
13 RUN ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
14 RUN ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key
15 #复制配置文件到相应的位置,并赋予脚本可执行权限
16 ADD run.sh  /run.sh
17 RUN chmod 755 /run.sh
18 
19 #开放端口
20 EXPOSE 22
21 
22 # 设置自启动命令
23 CMD ["/run.sh"]

创建run.sh

1 [root@localhost]# more run.sh 
2 #!/bin/bash
3 /usr/sbin/sshd -D

创建镜像

1  docker build  -t centos:v1 .                #后面有个点

创建docker虚拟网

1 docker network create --subnet=172.19.0.0/16  doufy

运行容器

1 docker run -itd --network doufy --ip 172.19.0.101 --name node1 -u 0  --privileged -h node1 centos:v1 /usr/sbin/init

至此结束

原文地址:https://www.cnblogs.com/doufy/p/11170919.html