对单位网站的要求吗,冒险岛cms是什么意思,定制家具品牌排行榜前十名,郑州网站排名优化目录
引言
1 Docker镜像#xff08;Image#xff09;
1.1 镜像的定义
1.2 镜像的特点
1.3 镜像的创建
1.4 镜像的结构
1.5 镜像结构描述
2 Docker容器#xff08;Container#xff09;
2.1 容器的定义
2.2 容器的特点
2.3 容器的创建与运行
2.4 容器的生命周期…目录
引言
1 Docker镜像Image
1.1 镜像的定义
1.2 镜像的特点
1.3 镜像的创建
1.4 镜像的结构
1.5 镜像结构描述
2 Docker容器Container
2.1 容器的定义
2.2 容器的特点
2.3 容器的创建与运行
2.4 容器的生命周期流程
2.5 容器生命周期流程描述
3 镜像与容器的区别与联系
3.1 区别
3.2 联系
3.3 镜像与容器的关系
4 总结 引言 随着容器化技术的快速发展Docker已经成为开发和运维领域中不可或缺的工具。Docker 的核心概念包括容器Container和镜像Image这两个概念虽然紧密相关但有着本质的区别。理解它们的区别与联系对于深入掌握Docker技术至关重要。 1 Docker镜像Image
1.1 镜像的定义 Docke镜像是一个 只读模板用于创建Docker容器。 镜像包含了运行某个软件所需的所有文件系统、库、环境变量和配置文件。可以将其类比为传统虚拟机中的“快照”或“模板”但镜像更加轻量级因为它只包含必要的文件而不是整个操作系统。 1.2 镜像的特点 只读性镜像一旦创建就不能被修改。任何修改都需要通过创建一个新的镜像来实现分层结构镜像由多个只读层组成每一层代表了对前一层的一个修改如添加文件、修改配置等这种分层结构使得镜像的构建和分发更加高效可复用性镜像可以在不同的环境中复用确保了应用在不同环境中的一致性 1.3 镜像的创建 镜像通常通过Dockerfile定义并构建Dockerfile是一个文本文件包含了一系列指令用于自动化构建镜像例如 # 使用官方 Ubuntu 基础镜像
FROM ubuntu:20.04# 设置环境变量
ENV DEBIAN_FRONTENDnoninteractive# 安装软件包
RUN apt-get update apt-get install -y \curl \wget \ rm -rf /var/lib/apt/lists/*# 复制文件到镜像中
COPY app.py /app/app.py# 暴露端口
EXPOSE 80# 设置容器启动时执行的命令
CMD [python, /app/app.py] 通过docker build命令可以基于Dockerfile构建镜像 docker build -t my-image . 1.4 镜像的结构 1.5 镜像结构描述 Base Image基础镜像通常是官方提供的操作系统镜像如UbuntuLayer 1安装软件包层包含所有通过RUN指令安装的软件包Layer 2文件复制层包含通过COPY或ADD指令复制到镜像中的文件Layer 3环境配置层包含通过ENV、WORKDIR等指令设置的环境变量和配置Final Image最终构建的镜像由所有层叠加而成 2 Docker容器Container
2.1 容器的定义 Docker容器是镜像的 运行实例。 容器是轻量级的、独立的、可执行的应用包包含了运行应用所需的所有东西代码、运行时、系统工具、系统库和设置 容器可以看作是一个隔离的进程运行在宿主机的操作系统之上 2.2 容器的特点 可运行性容器是镜像的运行实例可以启动、停止、重启和删除隔离性容器提供了进程级别的隔离每个容器都有自己的文件系统、网络栈和进程空间可移植性容器可以在任何支持 Docker 的环境中运行确保了应用的一致性 2.3 容器的创建与运行 容器可以通过docker run命令基于镜像创建并运行例如 docker run -d -p 8080:80 --name my-container my-app -d后台运行容器-p 8080:80将宿主机的8080端口映射到容器的80端口--name my-container为容器指定名称my-image使用的镜像名称 2.4 容器的生命周期流程 2.5 容器生命周期流程描述 Create Container基于镜像创建容器但此时容器并未运行Start Container启动容器使其进入运行状态Container Running容器正在运行可以执行应用逻辑Stop Container通过docker stop命令停止容器容器进入退出状态Kill Container通过docker kill命令强制终止容器容器进入退出状态Container Exited容器已退出可以重新启动或删除Restart Container通过docker restart命令重新启动已退出的容器Remove Container通过docker rm命令删除容器释放资源 3 镜像与容器的区别与联系
3.1 区别 维度 镜像(Image) 容器(Container) 存在形式 静态模板 动态实例 存储特性 只读分层 可写层只读层 生命周期 长期存储 临时运行 创建方式 docker build docker run/create 数量关系 1:N 1:1 磁盘占用 较大包含完整环境 较小增量存储 修改影响 创建新镜像 实时生效 3.2 联系 镜像与容器的关系容器是镜像的运行实例没有镜像就无法创建容器镜像为容器提供了运行环境容器则是镜像的具体执行镜像的复用性同一个镜像可以创建多个容器实例每个容器实例都是独立的互不影响容器的可变性容器在运行过程中可以修改文件系统、环境变量等但这些修改不会影响原始镜像如果需要将容器的修改保存为新的镜像可以使用docker commit命令 3.3 镜像与容器的关系 4 总结 Docker镜像和容器是Docker技术的核心概念理解它们的区别与联系对于掌握Docker至关重要。 镜像是一个只读模板用于创建容器容器是镜像的运行实例具有生命周期和可变性通过Dockerfile可以自动化构建镜像而docker run命令则用于基于镜像创建并运行容器 掌握镜像和容器的概念可以帮助开发者更高效地打包、分发和运行应用提高开发和运维的效率。