常用命令
镜像管理命令:
docker images(列出镜像)
docker pull(拉取镜像)
docker build(构建镜像)
docker save/load(保存/加载镜像)
容器操作命令
docker run(创建并启动容器)
docker start/stop/restart(启停容器)
docker exec(进入容器)
docker rm/rmi(删除容器/镜像
仓库交互命令
docker login/logout(登录/退出仓库)
docker push(推送镜像)
docker pull(拉取镜像)
状态查看命令
docker ps(查看运行中容器)
docker logs(查看容器日志)




docker-compose.yaml
文件
Docker Compose 的核心配置文件,用于定义和管理多容器 Docker 应用程序。它通过声明式语法描述应用的各个服务、网络、卷等组件及其依赖关系,使得容器编排变得简单高效。以下是其核心作用详解:
定义多容器服务
-
服务编排:在一个文件中定义多个容器(服务),例如 Web 服务、数据库、缓存等。
services:
web:
image: nginx:latest
ports:
- "80:80"
db:
image: postgres:13
environment:
POSTGRES_PASSWORD: example
配置容器参数
常用配置项:
image
:指定容器镜像(如nginx:latest
)。ports
:端口映射(主机端口:容器端口)。environment
:设置环境变量(如数据库密码)。volumes
:挂载主机目录或卷到容器。networks
:自定义容器网络。depends_on
:定义服务启动顺序(如 Web 服务依赖数据库启动)
一键启停与扩展
- 启动所有服务 :
docker-compose up -d
(后台运行)。 - 停止服务 :
docker-compose down
(清理容器、网络)。 - 扩展实例 :
docker-compose up -d --scale web=3
启动 3 个 Web 容器实例
环境隔离与复用
- 多环境适配 :通过
-f
指定不同文件(如docker-compose.prod.yaml
)切换生产/测试环境。 - 变量替换 :使用
${VARIABLE}
结合.env
文件动态配置参数
资源限制与健康检查
资源限制
services:
web:
deploy:
resources:
limits:
cpus: "0.5"
memory: 512M
健康检查:
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
interval: 30s
timeout: 10s
网络与存储管理
- 自定义网络 :容器间通过服务名通信(如
db
主机名指向数据库容器)。 - 持久化数据 :通过
volumes
声明卷,避免容器销毁时数据丢失。
与 Docker Swarm/Kubernetes 集成
- 生产级部署 :通过
docker stack deploy
将 Compose 文件部署到 Swarm 集群。 - 转换为 Kubernetes :
docker-compose convert
生成 K8s 资源文件(需工具支持)。