从零开始制作centos76容器

----------------------------------------------------

创建初始的centos7.6 容器image

----------------------------------------------------

需要一个机器有一个centos7.6的yum源,自己设置默认安装进去哪些包

脚本
# cat centos76-init-image.sh
#!/bin/bash
export centos_root=/root/centos76-chroot
export rpm_repo=http://192.168.1.1/centos76
rm -rf ${centos_root}
mkdir -p ${centos_root}
yum -y --installroot=${centos_root} install yum vim vim-minimal iputils iproute procps-ng net-tools openssh* filesystem passwd
cp /etc/skel/.bash* ${centos_root}/root/
tar -C ${centos_root} -c . | docker import - centos76:v1.0

 

docker images可以看到显示images

----------------------------------------------------------------------

在此基础上可以进行二次生成images,下边是设置了root密码,开启sshd服务的images

----------------------------------------------------------------------
mkdir centos-init-image
cd centos-init-image/


tee > centos76.repo << EOF
[centos76]
name=centos76
baseurl=http://192.168.1.1/centos76
enabled=1
gpgcheck=0
EOF


# cat Dockerfile
FROM centos76:v1.0
ADD centos76.repo /etc/yum.repos.d
RUN rpmdb --rebuilddb && yum install -y --disablerepo=* --enablerepo=centos76 net-tools && yum clean all && ssh-keygen -q -t rsa -f /etc/ssh/ssh_host_rsa_key -N "" && ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N "" && ssh-keygen -q -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N "" && echo "abc123" | passwd --stdin root
CMD ["/usr/sbin/sshd", "-D"]

根据Dockerfile生成新的images
# docker build -t centos76:v1.1 .
# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos76            v1.1                592936a6a44d        33 seconds ago      881MB
centos76            v1.0                b92bd1f5d646        12 hours ago        517MB

导出images文件拷贝到其他环境使用

# cd
# docker save centos76:v1.1 > /root/centos76-v1.1.tar.xz
                                                                               

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值