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有个缺陷,没办法封装元数据级别的信息,这只能封装文件级别的变化,不能声明环境变量,不能声明启动命令,只能封装文件级别的变化

相关推荐
斯班奇的好朋友阿法法1 小时前
中科方德(NFSChina)离线安装 RPM 包
运维
milo.qu2 小时前
RockyLinux9.7 docker部署Jisti Meet
linux·docker·容器
GanGanGanGan_2 小时前
CentOS 7.9 glibc 2.17 源码编译升级到 glibc 2.31
linux·运维·centos·glibc
charlie1145141912 小时前
嵌入式Linux驱动开发——class 和 device 模型 - 自动创建设备节点的幕后机制
linux·运维·驱动开发
杨云龙UP4 小时前
SQL Server2022部署:Windows Server 2016下安装、SSMS配置、备份还原与1433端口放通全流程_20260508
运维·服务器·数据库·sql·sqlserver·2022
梦想与想象-广州大智汇4 小时前
自建docker加速镜像,使用 Cloudflare Workers/Pages 部署加速教程
运维·docker·容器
枳实-叶4 小时前
【Linux驱动开发】第四天:dmesg日志全解+驱动加载失败极速排查
linux·运维·驱动开发
武超杰4 小时前
Nginx从入门到精通
运维·nginx
weixin_704266055 小时前
Nginx 反向代理 + 6 种负载均衡策略
运维·nginx
AI服务老曹6 小时前
架构师视角:如何构建支持GB28181/RTSP的异构AI视频平台?从Docker部署到源码交付的深度实践
人工智能·docker·音视频