docker commit 封装镜像

1.创建基础容器

bash 复制代码
docker run --name nginx -p 80:80 -d 163
docker exec -it nginx /bin/bash
bash 复制代码
sed -e 's|^mirrorlist=|#mirrorlist=|g' \
         -e 's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.tuna.tsinghua.edu.cn|g' \
         -i.bak \
         /etc/yum.repos.d/CentOS-*.repo			#将网络源替换为清华源
bash 复制代码
yum clean all
yum -y install gcc gcc-c++ make pcre pcre-devel zlib zlib-devel lrzsz
bash 复制代码
#上传nginx源码包		解压并进入
./configure --prefix=/usr/local/nginx && make && make install
echo "123456" > /usr/local/nginx/html/index.html

#启动服务
/usr/local/nginx/sbin/nginx		

2.浏览器访问本机IP 测试

bash 复制代码
192.168.66.11

3.删除容器中多余文件

bash 复制代码
rm -rf nginx-1.13.8*
yum clean all

#退出容器
exit

4.封装镜像

bash 复制代码
docker ps -a

#将nginx容器封装为nginx:v0.1的镜像
docker commit nginx nginx:v0.1
bash 复制代码
#查看镜像是否封装成功
docker images

#新镜像启动容器
docker run --name nginx -p 80:80 -d nginx:v0.1
bash 复制代码
#进入容器
docker exec -it nginx /bin/bash
#启动nginx
/usr/local/nginx/sbin/nginx

5.浏览器访问测试

浏览器再次访问,成功

6.说明

commit有个缺陷,没办法封装元数据级别的信息,这只能封装文件级别的变化,不能声明环境变量,不能声明启动命令,只能封装文件级别的变化

相关推荐
Lonely 净土4 小时前
Linux 运维文件写入操作
linux·运维·服务器·文件管理
飞英思特无线充电4 小时前
严苛场景巡检机器人的无线补能设计:点位、BMS、认证与运维边界
运维·机器人
Jimmy_jimi5 小时前
利用nginx代理完成url重定位
运维·nginx
卷无止境5 小时前
Windows 上丝滑开发 Python,并稳定构建 Docker 镜像
后端·python·docker
liuyicenysabel5 小时前
多服务上线日记三:
运维·服务器·笔记·学习
一只鹿鹿鹿7 小时前
大数据中心安全系统解决方案(Word文件)
大数据·运维·物联网·安全·政务
万里侯8 小时前
GitOps 2026年演进趋势:从配置管理到环境即代码的范式转移及Pull vs Push模型的再思考
微服务·容器·k8s
acd120098 小时前
一次线上OOM排查实录:从jmap到代码重构,我踩过的坑全在这了
容器·重构·kubernetes
领创工作室9 小时前
GitHub Workflows 全面解析:从核心概念到开源实现
运维·github
吕海洋10 小时前
目前可用的docker源2026.08
运维·docker·容器