docker容器的构建
构建容器的方法:
(1)命令docker commit
运行容器的三个步骤:运行+修改+保存镜像
例子:
拉取镜像
docker pull centos
创建容器
docker run -itd e934aafc2206 /bin/bash
进入容器修改容器
docker exec -it e6e5f719f74c /bin/bash
yum -y install net-tools vim
将修改后的容器做成镜像
docker commit e6e5f719f74c centos-with-vim/nettools:1.0
删除修改后的容器
docker ps
docker rm -f e6e5f719f74c
docker ps
docker images
测试修改后的镜像是不是你添加的东西
docker run -it centos-with-vim/nettools:1.0
(2)dockerfile构建文件,
例子:
vim dockerfile
FROM centos
RUN yum install net-tools -y
RUN yum install elinks -y
CMD ["/bin/bash"]
执行dockerfile文件
docker build -t centos-nginx:test ./
注释;
centos-nginx:test 新镜像名称:标签
(4)查看镜像执行过程,
docker history centos-with-vim/nettools:1.0
(5)镜像的缓存特性:
1.当镜像里执行过的层就会跳过,执行新添加的层以及往下的已经有的或者没有的层.修改的时候
2.新增加的数据之只能往上层增加,才会有缓存特性,不能往下层增加,否则缓存特效就美誉了,也就会重写这个文件,如果不想要这个缓存特性,则添加no-cache
vim testfile
This is wode coustom imags
:wq
vim dockerfile
FROM centos
RUN yum install net-tools -y
COPY testfile /
RUN yum install elinks -y
CMD ["/bin/bash"]
(6)容器的调试方法:
vim dockerfile
FROM busybox
RUN yum install net-tools -y
COPY testfile /
RUN yum install elinks -y
CMD ["/bin/bash"]
docker build -t haha:test ./
docker run -it 进入报错的上一个容器运行,然后并执行报错的命令,这是排除错误思路
(7)一次性容器运行
docker run -it e934aafc2206
添加:
docker文件的参数详解
vim dockerfile
FROM: 基础镜像
MAINTAINER:作者信息
COPY:src(host) dest(container)
ADD:拷贝到container同时解压
ENV:变量
ENV my_version 1.3
RNN yun install httpd-$my-version
EXPOSE:指定容器中的进程监听某个端口
VOLUME:目录文件映射到容器
WORKDIR:为后面所有的命令提供目录
RUN:容器运行的命令
CMD:容器启动时运行的命令(可被代替)
ENTRYPOINT:容器启动时的执行命令,只能有一个,不会被替换。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探