基础命令
| 命令 | 说明 | 示例 |
|---|---|---|
docker version |
查看 Docker 客户端和服务器版本信息 | docker version |
docker info |
显示 Docker 系统信息(容器数、镜像数、存储驱动等) | docker info |
docker help |
查看帮助信息,后接具体命令可查看子命令帮助 | docker help run |
docker system df |
查看磁盘使用情况(镜像、容器、数据卷等) | docker system df |
docker system prune |
清理未使用的容器、网络、镜像(悬空)和数据卷 | docker system prune -a |
容器管理
| 命令 | 说明 | 示例 |
|---|---|---|
docker run |
创建并启动一个新容器 | docker run -d --name nginx -p 80:80 nginx |
docker ps |
列出运行中的容器,-a 列出所有容器 |
docker ps -a |
docker start |
启动一个已存在的容器 | docker start nginx |
docker stop |
停止一个运行中的容器 | docker stop nginx |
docker restart |
重启容器 | docker restart nginx |
docker rm |
删除一个或多个容器(需先停止) | docker rm nginx |
docker logs |
查看容器日志,-f 实时跟踪 |
docker logs -f nginx |
docker exec |
在运行中的容器内执行命令 | docker exec -it nginx bash |
docker inspect |
查看容器详细信息(JSON 格式) | docker inspect nginx |
docker cp |
在容器和宿主机之间复制文件/文件夹 | docker cp index.html nginx:/usr/share/nginx/html |
docker commit |
从容器创建新镜像 | docker commit nginx my-nginx:v1 |
镜像操作
| 命令 | 说明 | 示例 |
|---|---|---|
docker images |
列出本地镜像 | docker images |
docker pull |
从镜像仓库拉取镜像 | docker pull ubuntu:20.04 |
docker push |
将本地镜像推送到镜像仓库 | docker push myrepo/myapp:latest |
docker build |
从 Dockerfile 构建镜像 | docker build -t myapp:v1 . |
docker tag |
为镜像打标签 | docker tag myapp:v1 myrepo/myapp:v1 |
docker rmi |
删除本地镜像 | docker rmi myapp:v1 |
docker save |
将镜像保存为 tar 归档文件 | docker save -o myapp.tar myapp:v1 |
docker load |
从 tar 归档文件加载镜像 | docker load -i myapp.tar |
docker history |
查看镜像构建历史 | docker history nginx |
docker inspect |
查看镜像详细信息 | docker inspect nginx |
数据卷
| 命令 | 说明 | 示例 |
|---|---|---|
docker volume create |
创建数据卷 | docker volume create mydata |
docker volume ls |
列出数据卷 | docker volume ls |
docker volume inspect |
查看数据卷详细信息 | docker volume inspect mydata |
docker volume rm |
删除数据卷 | docker volume rm mydata |
docker volume prune |
删除所有未使用的数据卷 | docker volume prune |
| 挂载数据卷(运行容器时) | 使用 -v 或 --mount 挂载卷 |
docker run -v mydata:/data ubuntu |
| 挂载宿主机目录 | 绑定挂载(bind mount) | docker run -v /host/data:/container/data ubuntu |
网络相关
| 命令 | 说明 | 示例 |
|---|---|---|
docker network create |
创建自定义网络 | docker network create --driver bridge mynet |
docker network ls |
列出网络 | docker network ls |
docker network inspect |
查看网络详细信息 | docker network inspect mynet |
docker network rm |
删除网络 | docker network rm mynet |
docker network prune |
删除所有未使用的网络 | docker network prune |
docker network connect |
将容器连接到网络 | docker network connect mynet nginx |
docker network disconnect |
将容器从网络断开 | docker network disconnect mynet nginx |
| 指定容器网络(运行容器时) | 使用 --network 指定网络 |
docker run --network mynet --name nginx nginx |
Docker Compose
| 命令 | 说明 | 示例 |
|---|---|---|
docker-compose up |
创建并启动所有服务(-d 后台运行) |
docker-compose up -d |
docker-compose down |
停止并删除所有容器、网络(可选删除卷:-v) |
docker-compose down -v |
docker-compose ps |
列出当前项目的容器状态 | docker-compose ps |
docker-compose logs |
查看服务日志,-f 实时跟踪 |
docker-compose logs -f web |
docker-compose exec |
在运行中的服务容器内执行命令 | docker-compose exec web bash |
docker-compose build |
构建(或重新构建)服务镜像 | docker-compose build web |
docker-compose pull |
拉取服务依赖的镜像 | docker-compose pull |
docker-compose restart |
重启服务 | docker-compose restart web |
docker-compose stop |
停止服务(不删除容器) | docker-compose stop |
docker-compose start |
启动已停止的服务 | docker-compose start |
docker-compose config |
验证 Compose 文件格式并显示配置 | docker-compose config |