一、基础命令 1 2 3 4 docker version docker info docker --help docker [命令] --help
二、镜像管理 查看镜像 1 2 3 4 5 6 7 docker images docker images -a docker images -q docker images --digests docker images --no-trunc docker image ls docker search [镜像名]
获取镜像 1 2 docker pull [镜像名][:标签] docker pull -a [镜像名]
构建镜像 1 2 3 4 docker build -t [镜像名][:标签] [路径] docker build -f [Dockerfile路径] . docker build --no-cache -t [镜像名] . docker commit [容器ID] [镜像名][:标签]
删除镜像 1 2 3 4 5 6 docker rmi [镜像ID/名称] docker rmi -f [镜像ID] docker rmi $(docker images -q) docker image prune docker image prune -a docker image prune -a --filter "until=24h"
镜像导入导出 1 2 3 4 5 6 docker save -o [文件名.tar] [镜像名] docker save [镜像名] > [文件名.tar] docker load -i [文件名.tar] docker load < [文件名.tar] docker export [容器ID] > [文件名.tar] docker import [文件名.tar] [镜像名][:标签]
镜像标签 1 2 3 docker tag [源镜像][:标签] [目标镜像][:标签] docker image inspect [镜像名] docker history [镜像名]
三、容器管理 查看容器 1 2 3 4 5 6 7 8 docker ps docker ps -a docker ps -l docker ps -n 5 docker ps -q docker ps -s docker container ls docker container ls -a
创建和运行容器 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 docker run [镜像名] docker run -d [镜像名] docker run -it [镜像名] /bin/bash docker run --name [容器名] [镜像名] docker run -p [主机端口]:[容器端口] [镜像名] docker run -P [镜像名] docker run -v [主机路径]:[容器路径] [镜像名] docker run -v [数据卷名]:[容器路径] [镜像名] docker run --volumes-from [容器名] [镜像名] docker run -e [变量名]=[值] [镜像名] docker run --env-file [文件路径] [镜像名] docker run --network [网络名] [镜像名] docker run --link [容器名]:[别名] [镜像名] docker run --restart=always [镜像名] docker run --rm [镜像名] docker run -m [内存限制] [镜像名] docker run --cpus=[CPU数量] [镜像名] docker run -w [工作目录] [镜像名] docker run -u [用户名/UID] [镜像名] docker run --privileged [镜像名] docker run -h [主机名] [镜像名] docker create [镜像名]
启动和停止容器 1 2 3 4 5 6 7 8 docker start [容器ID/名称] docker start -i [容器ID/名称] docker stop [容器ID/名称] docker stop $(docker ps -q) docker restart [容器ID/名称] docker pause [容器ID/名称] docker unpause [容器ID/名称] docker kill [容器ID/名称]
删除容器 1 2 3 4 5 6 docker rm [容器ID/名称] docker rm -f [容器ID/名称] docker rm $(docker ps -aq) docker rm $(docker ps -qf status=exited) docker container prune docker container prune -f
容器操作 1 2 3 4 5 6 7 8 9 10 docker exec -it [容器ID/名称] [命令] docker exec -it [容器ID] /bin/bash docker exec -d [容器ID] [命令] docker exec -u [用户名] [容器ID] [命令] docker attach [容器ID/名称] docker top [容器ID/名称] docker port [容器ID/名称] docker rename [旧名称] [新名称] docker update [选项] [容器ID] docker wait [容器ID]
容器日志和信息 1 2 3 4 5 6 7 8 9 10 11 12 docker logs [容器ID/名称] docker logs -f [容器ID/名称] docker logs --tail 100 [容器ID] docker logs --since 30m [容器ID] docker logs -t [容器ID] docker inspect [容器ID/名称] docker inspect --format='{{.State.Status}}' [容器ID] docker stats docker stats [容器ID] docker stats --no-stream docker diff [容器ID] docker events
容器文件操作 1 2 docker cp [容器ID]:[容器路径] [主机路径] docker cp [主机路径] [容器ID]:[容器路径]
四、网络管理 1 2 3 4 5 6 7 8 9 docker network ls docker network create [网络名] docker network create --driver bridge [网络名] docker network create --subnet=[子网] [网络名] docker network rm [网络名] docker network prune docker network inspect [网络名] docker network connect [网络名] [容器名] docker network disconnect [网络名] [容器名]
五、数据卷管理 1 2 3 4 5 docker volume ls docker volume create [数据卷名] docker volume rm [数据卷名] docker volume prune docker volume inspect [数据卷名]
六、Docker Compose 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 docker-compose up docker-compose up -d docker-compose up --build docker-compose down docker-compose down -v docker-compose start docker-compose stop docker-compose restart docker-compose pause docker-compose unpause docker-compose ps docker-compose ps -a docker-compose logs docker-compose logs -f docker-compose logs [服务名] docker-compose exec [服务名] [命令] docker-compose run [服务名] [命令] docker-compose build docker-compose build --no-cache docker-compose pull docker-compose push docker-compose config docker-compose top docker-compose port [服务名] [端口] docker-compose scale [服务名]=[数量] docker-compose rm docker-compose kill
七、镜像仓库 1 2 3 4 5 docker login docker login [仓库地址] docker logout docker push [镜像名][:标签] docker pull [镜像名][:标签]
八、系统管理 1 2 3 4 5 6 7 docker system df docker system df -v docker system prune docker system prune -a docker system prune -a --volumes docker system events docker system info
九、其他常用命令 1 2 3 4 5 6 7 docker version docker info docker context ls docker context use [上下文名] docker plugin ls docker plugin install [插件名] docker plugin rm [插件名]
十、常用组合命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 docker stop $(docker ps -aq) docker rm $(docker ps -aq) docker rmi $(docker images -q) docker rmi $(docker images -f "dangling=true" -q) docker system prune -a --volumes -f docker exec -it $(docker ps -lq) /bin/bash docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' [容器ID]
这些是 Docker 最常用的命令,涵盖了日常开发和运维的大部分场景。