一、Docker 常用命令
1. 镜像管理
命令 | 用途 | 常用参数示例 |
---|---|---|
docker pull <镜像名>:<标签> |
拉取镜像 | docker pull nginx:latest |
docker images |
列出本地镜像 | docker images 或 docker images -a (含中间层镜像) |
docker rmi <镜像ID或名> |
删除镜像 | docker rmi nginx 或 docker rmi -f <镜像ID> (强制删除) |
docker build -t <镜像名> . |
构建镜像(需 Dockerfile) | docker build -t myapp:v1 . |
2. 容器操作
命令 | 用途 | 常用参数示例 |
---|---|---|
docker run [参数] <镜像> |
创建并启动容器 | docker run -d -p 8080:80 --name mynginx nginx -d (后台运行) -p <主机端口>:<容器端口> (端口映射) --name (指定容器名) |
docker ps |
查看运行中的容器 | docker ps 或 docker ps -a (显示所有容器) |
docker stop <容器名/ID> |
停止容器 | docker stop mynginx |
docker start <容器名/ID> |
启动已停止的容器 | docker start mynginx |
docker restart <容器名/ID> |
重启容器 | docker restart mynginx |
docker rm <容器名/ID> |
删除容器 | docker rm mynginx 或 docker rm -f mynginx (强制删除运行中的容器) |
docker exec -it <容器名/ID> <命令> |
进入容器执行命令 | docker exec -it mynginx /bin/bash (交互式终端) |
docker logs <容器名/ID> |
查看容器日志 | docker logs mynginx 或 docker logs -f mynginx (实时跟踪) |
3. 网络与存储
命令 | 用途 | 示例 |
---|---|---|
docker network ls |
查看网络列表 | docker network ls |
docker volume create <卷名> |
创建数据卷 | docker volume create mydata |
docker run -v <主机路径>:<容器路径> |
挂载数据卷/目录 | docker run -v /home/data:/app/data myapp |
二、Docker Compose 常用命令
新版的命令格式是docker compose
不再是docker-compose
了
1. 服务管理
命令 | 用途 | 常用参数示例 |
---|---|---|
docker-compose up |
启动服务 | docker-compose up -d (后台运行) docker-compose up --build (重新构建镜像) |
docker-compose down |
停止并删除容器、网络 | docker-compose down -v (同时删除数据卷) |
docker-compose ps |
查看服务状态 | docker-compose ps |
docker-compose logs |
查看服务日志 | docker-compose logs -f (实时跟踪) |
docker-compose build |
重新构建镜像 | docker-compose build |
2. 容器操作
命令 | 用途 | 示例 |
---|---|---|
docker-compose exec <服务名> <命令> |
进入服务容器执行命令 | docker-compose exec web /bin/bash |
docker-compose restart <服务名> |
重启服务 | docker-compose restart web |
docker-compose scale <服务名>=<数量> |
扩展服务实例数量 | docker-compose scale web=3 |
3. 配置文件
命令 | 用途 | 示例 |
---|---|---|
docker-compose -f <文件> up |
指定 Compose 文件 | docker-compose -f docker-compose-prod.yml up |
docker-compose -p <项目名> up |
指定项目名 | docker-compose -p myproject up |
docker-compose config |
验证 Compose 文件语法 | docker-compose config |
常用参数说明
- 通用参数 :
-d
:后台运行(detach)。-p <主机端口>:<容器端口>
:端口映射。-v <主机路径>:<容器路径>
:挂载数据卷或目录。-e <环境变量>
:设置容器环境变量(如-e MYSQL_ROOT_PASSWORD=123
)。
- Docker Compose 参数 :
--project-name <名称>
或-p
:指定项目名称(默认使用目录名)。--build
:启动时重新构建镜像。
示例场景
- 启动一个 Nginx 容器:
bash
docker run -d -p 80:80 --name my-nginx nginx
- 使用 Docker Compose 启动多服务环境:
bash
docker-compose up -d # 启动定义在 docker-compose.yml 中的服务
docker-compose down # 清理所有资源