以下是 Docker 常用指令的归纳整理,涵盖镜像管理、容器操作、网络配置、数据卷等核心场景,方便快速查阅:
一、镜像管理
命令 |
说明 |
示例 |
docker pull |
拉取镜像 |
docker pull nginx:latest |
docker push |
推送镜像到仓库 |
docker push my-registry.com/my-image:tag |
docker build |
构建镜像 |
docker build -t my-image:1.0 . |
docker images |
查看本地镜像列表 |
docker images 或 docker image ls |
docker rmi |
删除镜像 |
docker rmi my-image:1.0 |
docker tag |
给镜像打标签 |
docker tag my-image:1.0 my-registry.com/my-image:latest |
docker search |
搜索 Docker Hub 镜像 |
docker search ubuntu |
二、容器生命周期
命令 |
说明 |
示例 |
docker run |
创建并启动容器 |
docker run -d --name my-nginx -p 80:80 nginx |
docker start |
启动已停止的容器 |
docker start my-nginx |
docker stop |
停止运行中的容器 |
docker stop my-nginx |
docker restart |
重启容器 |
docker restart my-nginx |
docker rm |
删除容器 |
docker rm my-nginx (需先停止)
docker rm -f my-nginx (强制删除运行中的容器) |
docker exec |
进入运行中的容器执行命令 |
docker exec -it my-nginx /bin/bash |
docker pause |
暂停容器进程 |
docker pause my-nginx |
docker unpause |
恢复暂停的容器 |
docker unpause my-nginx |
三、容器监控与调试
命令 |
说明 |
示例 |
docker ps |
查看运行中的容器 |
docker ps
docker ps -a (查看所有容器) |
docker logs |
查看容器日志 |
docker logs my-nginx
docker logs -f my-nginx (实时跟踪日志) |
docker stats |
查看容器资源占用 |
docker stats my-nginx |
docker top |
查看容器内进程 |
docker top my-nginx |
docker inspect |
查看容器/镜像详细信息 |
docker inspect my-nginx |
docker cp |
在容器和主机间复制文件 |
docker cp my-nginx:/app/config.conf ./ |
四、网络管理
命令 |
说明 |
示例 |
docker network ls |
查看所有网络 |
docker network ls |
docker network create |
创建自定义网络 |
docker network create my-network |
docker network connect |
将容器连接到网络 |
docker network connect my-network my-nginx |
docker network inspect |
查看网络详情 |
docker network inspect my-network |
五、数据卷管理
命令 |
说明 |
示例 |
docker volume create |
创建数据卷 |
docker volume create my-volume |
docker volume ls |
查看数据卷列表 |
docker volume ls |
docker volume rm |
删除数据卷 |
docker volume rm my-volume |
挂载数据卷到容器 |
持久化存储数据 |
docker run -v my-volume:/data my-image |
挂载主机目录到容器 |
绑定主机目录 |
docker run -v /host/path:/container/path my-image |
六、系统管理
命令 |
说明 |
示例 |
docker system df |
查看 Docker 磁盘使用情况 |
docker system df |
docker system prune |
清理无用数据(镜像、容器、网络、缓存) |
docker system prune -a (谨慎使用) |
docker login |
登录镜像仓库 |
docker login registry.example.com |
docker logout |
退出镜像仓库 |
docker logout registry.example.com |
七、Docker Compose 常用命令
命令 |
说明 |
示例 |
docker-compose up |
启动服务 |
docker-compose up -d (后台运行) |
docker-compose down |
停止并删除服务 |
docker-compose down |
docker-compose logs |
查看服务日志 |
docker-compose logs -f web |
docker-compose ps |
查看服务状态 |
docker-compose ps |
常用场景速查
运行一个 MySQL 容器:
docker run -d --name mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-p 3306:3306 \
mysql:8.0
构建并推送自定义镜像:
docker build -t my-app:1.0 .
docker tag my-app:1.0 my-registry.com/my-app:latest
docker push my-registry.com/my-app:latest
清理所有无用数据:
docker system prune -a --volumes
掌握这些命令后,可以覆盖 90% 的 Docker 日常操作需求。如需更高级功能(如 Swarm 集群管理),可进一步学习 Docker 官方文档。