基于运行中的容器手动打包新镜像,适合快速实验,不推荐用于生产。
操作流程
# 1. 启动基础容器
docker run -dit --name centos8 centos:8
# 2. 进入容器配置环境(如替换 yum 源)
rm -rf /etc/yum.repos.d/*
cat > /etc/yum.repos.d/test.repo << 'EOF'
[BaseOS]
name=CentOS-$releasever - Base
baseurl=https://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/
gpgcheck=0
enabled=1
[AppStream]
name=CentOS-$releasever - AppStream
baseurl=https://mirrors.aliyun.com/centos/$releasever/AppStream/$basearch/os/
gpgcheck=0
enabled=1
EOF
# 3. 安装应用
yum install nginx -y
# 4. 修改应用内容(如编辑 nginx 首页)
# 5. 提交为镜像
docker commit -m "commit a nginx image" 696e07f21cdb mynginx:v0.1
# 6. 运行新镜像
docker run -dit --name mynginx -p 80:80 mynginx:v0.1 nginx -g "daemon off;"