Docker 是一个开源的容器化平台,把应用及其依赖打包成标准化的镜像,并以容器的方式隔离运行。它解决了「在我机器上能跑」的环境一致性问题,也是 CI/CD、微服务和云原生基础设施的基础组件。
本文基于 Docker Engine 29.9.x(2026-10)和官方最新文档重写。Docker 29 的重要变化:全新安装默认使用 containerd image store,cgroup v1 已弃用,nftables 后端仍为实验特性。
Docker 是一个开源的容器化平台,把应用及其依赖打包成标准化的镜像,并以容器的方式隔离运行。它解决了「在我机器上能跑」的环境一致性问题,也是 CI/CD、微服务和云原生基础设施的基础组件。
本文基于 Docker Engine 29.9.x(2026-10)和官方最新文档重写。Docker 29 的重要变化:全新安装默认使用 containerd image store,cgroup v1 已弃用,nftables 后端仍为实验特性。
版本说明(2026):本文基于 docker 18.06.1 + docker-compose 1.22.0(Compose v1)。Compose v1 已于 2023 年 7 月停止维护,当前使用 Compose v2:命令为
docker compose(空格),文件默认compose.yaml,不再需要顶层version:字段,安装方式也改为随 Docker CLI 插件分发。下文命令把docker-compose换成docker compose即可,配置示例仍可参考。
环境:docker:18.06.1,docker-compose:1.22.0
docker18.06 对应的 Compose 文件格式版本为 3.7
本篇包含以下内容:
Docker 存储要区分两个层面:
本文基于 Docker Engine 29.9.x(2026-10)官方文档重写,重点说明 Docker 29 默认的 containerd image store、overlay2、三种挂载方式、备份恢复和空间治理。
Docker 网络负责容器之间、容器与宿主机、容器与外部网络之间的通信。理解网络驱动、端口发布、DNS 和防火墙,是排查容器「连不上」问题的基础。
本文基于 Docker Engine 29.9.x(2026-10)官方文档重写,覆盖 bridge、host、none、overlay、macvlan、ipvlan、端口发布、IPv6、Compose 网络和防火墙。