跳到主要内容

Docker 命令速查表

本页面汇总了 Docker 最常用的命令,方便快速查阅。

镜像命令

命令说明
docker pull <镜像>拉取镜像
docker images列出本地镜像
docker rmi <镜像>删除镜像
docker tag <镜像> <新标签>创建镜像标签
docker save -o file.tar <镜像>导出镜像
docker load -i file.tar导入镜像
docker build -t <名称> .构建镜像
docker history <镜像>查看镜像历史
docker inspect <镜像>查看镜像详情
docker image prune删除悬空镜像

容器命令

命令说明
docker run <镜像>创建并运行容器
docker ps列出运行中的容器
docker ps -a列出所有容器
docker start <容器>启动容器
docker stop <容器>停止容器
docker restart <容器>重启容器
docker rm <容器>删除容器
docker logs <容器>查看日志
docker exec -it <容器> bash进入容器
docker cp <容器>:<路径> <本地路径>复制文件

docker run 常用选项

选项说明
-d后台运行
-it交互式终端
--name <名称>指定容器名称
-p <主机端口>:<容器端口>端口映射
-P随机端口映射
-v <主机路径>:<容器路径>挂载数据卷
-e <变量>=<值>设置环境变量
--env-file <文件>从文件读取环境变量
--network <网络>指定网络
--restart <策略>重启策略
--memory <大小>内存限制
--cpus <数量>CPU 限制
--rm容器退出后自动删除

Dockerfile 指令

指令说明
FROM <镜像>指定基础镜像
RUN <命令>执行命令
CMD ["命令"]容器启动命令
ENTRYPOINT ["命令"]入口点
COPY <源> <目标>复制文件
ADD <源> <目标>添加文件
WORKDIR <路径>设置工作目录
ENV <变量>=<值>设置环境变量
ARG <变量>定义构建参数
EXPOSE <端口>声明端口
VOLUME <路径>声明数据卷
USER <用户>指定运行用户
HEALTHCHECK健康检查
LABEL添加元数据

Docker Compose 命令

命令说明
docker compose up启动服务
docker compose up -d后台启动
docker compose down停止并删除
docker compose ps查看服务状态
docker compose logs查看日志
docker compose logs -f实时查看日志
docker compose exec <服务> bash进入服务
docker compose build构建镜像
docker compose pull拉取镜像
docker compose restart重启服务
docker compose stop停止服务
docker compose start启动服务
docker compose config验证配置

网络命令

命令说明
docker network ls列出网络
docker network create <名称>创建网络
docker network rm <名称>删除网络
docker network inspect <名称>查看网络详情
docker network connect <网络> <容器>连接网络
docker network disconnect <网络> <容器>断开网络
docker network prune删除未使用的网络

数据卷命令

命令说明
docker volume ls列出数据卷
docker volume create <名称>创建数据卷
docker volume rm <名称>删除数据卷
docker volume inspect <名称>查看数据卷详情
docker volume prune删除未使用的数据卷

系统命令

命令说明
docker info显示系统信息
docker version显示版本信息
docker system df查看磁盘使用
docker system prune清理未使用资源
docker system prune -a清理所有未使用资源
docker system prune -a --volumes包含数据卷清理

日志查看选项

选项说明
-f, --follow实时跟踪
--tail <数量>显示最后 N 行
-t, --timestamps显示时间戳
--since <时间>显示指定时间后的日志
--until <时间>显示指定时间前的日志

重启策略

策略说明
no不自动重启(默认)
always总是重启
unless-stopped除非手动停止,否则总是重启
on-failure失败时重启

常用组合命令

# 停止所有容器
docker stop $(docker ps -q)

# 删除所有容器
docker rm $(docker ps -aq)

# 删除所有镜像
docker rmi $(docker images -q)

# 删除所有未使用的资源
docker system prune -a --volumes

# 查看容器资源使用
docker stats --no-stream

# 批量导出镜像
docker save -o images.tar $(docker images -q)

# 查看镜像层
docker history --no-trunc <镜像>

Docker Compose 配置速查

services:
app:
image: nginx:latest # 使用镜像
build: . # 构建镜像
container_name: my-app # 容器名称
hostname: app-server # 主机名
restart: always # 重启策略
ports:
- "8080:80" # 端口映射
environment:
- NODE_ENV=production # 环境变量
env_file:
- .env # 环境变量文件
volumes:
- ./data:/app/data # 数据卷
networks:
- app-network # 网络
depends_on:
- db # 依赖
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost/health"]
interval: 30s
timeout: 10s
retries: 3
deploy:
resources:
limits:
cpus: '0.5'
memory: 512M

networks:
app-network:
driver: bridge

volumes:
app-data: