125个Docker的常用命令

|----------------|-----------------|------------------------------------------|
| 基本命令 |||
| 命令 | 描述 | 示例 |
| docker run | 创建并启动一个容器 | docker run -it ubuntu bash |
| docker ps | 列出当前运行的容器 | docker ps |
| docker ps -a | 列出所有容器,包括未运行的 | docker ps -a |
| docker stop | 停止一个运行中的容器 | docker stop CONTAINER_ID |
| docker start | 启动一个已停止的容器 | docker start CONTAINER_ID |
| docker restart | 重启容器 | docker restart CONTAINER_ID |
| docker rm | 删除一个或多个容器 | docker rm CONTAINER_ID |
| docker pull | 从仓库拉取一个镜像 | docker pull ubuntu |
| docker images | 列出本地存储的镜像 | docker images |
| docker rmi | 删除一个或多个镜像 | docker rmi IMAGE_ID |
| docker build | 从Dockerfile构建镜像 | docker build -t my-image:tag . |
| docker exec | 在运行的容器中执行命令 | docker exec -it CONTAINER_ID bash |
| docker logs | 获取容器的日志 | docker logs CONTAINER_ID |
| docker commit | 从修改过的容器创建新的镜像 | docker commit CONTAINER_ID new-image |
| docker inspect | 获取容器或镜像的详细信息 | docker inspect CONTAINER_ID/IMAGE_ID |
| docker network | 管理Docker网络 | docker network ls |

|----------------|--------------------|----------------------------------------------|
| 镜像管理指令 |||
| 命令 | 描述 | 示例 |
| docker images | 列出本地的所有镜像 | docker images |
| docker pull | 从镜像仓库拉取指定的镜像 | docker pull ubuntu:18.04 |
| docker push | 将本地镜像推送到镜像仓库 | docker push myrepo/myimage:tag |
| docker rmi | 删除一个或多个本地存储的镜像 | docker rmi ubuntu |
| docker build | 使用Dockerfile构建新的镜像 | docker build -t myimage . |
| docker history | 显示镜像的历史信息 | docker history myimage |
| docker inspect | 显示镜像的详细信息 | docker inspect ubuntu |
| docker tag | 为镜像添加一个新的标签 | docker tag ubuntu:18.04 myubuntu:latest |
| docker save | 将镜像保存为tar归档文件 | docker save myimage > myimage.tar |
| docker load | 从tar归档文件加载镜像 | docker load < myimage.tar |
| docker import | 从归档文件创建镜像 | docker import mycontainer.tar myimage |
| docker export | 将容器快照导出为归档文件 | docker export mycontainer > mycontainer.tar |
| docker create | 创建一个新容器但不启动它 | docker create ubuntu:18.04 |
| docker commit | 从容器创建镜像 | docker commit mycontainer mynewimage |

|----------------|---------------------|------------------------------------------------|
| 容器管理指令 |||
| 命令 | 描述 | 示例 |
| docker run | 创建一个新容器并运行一个命令 | docker run -it ubuntu /bin/bash |
| docker ps | 列出当前运行中的容器 | docker ps |
| docker ps -a | 列出所有容器,包括未运行的 | docker ps -a |
| docker stop | 停止一个或多个运行中的容器 | docker stop CONTAINER_ID |
| docker start | 启动一个或多个已停止的容器 | docker start CONTAINER_ID |
| docker restart | 重启一个或多个容器 | docker restart CONTAINER_ID |
| docker kill | 立即终止容器的运行 | docker kill CONTAINER_ID |
| docker rm | 删除一个或多个容器 | docker rm CONTAINER_ID |
| docker exec | 在运行的容器中执行命令 | docker exec -it CONTAINER_ID /bin/bash |
| docker attach | 连接到正在运行的容器 | docker attach CONTAINER_ID |
| docker cp | 从容器中复制文件/目录到主机,反之亦然 | docker cp CONTAINER_ID:/path/to/file /dest |
| docker logs | 获取容器的日志 | docker logs CONTAINER_ID |

|-----------------------|-----------------------|-----------------------------------------------------------------------------------------------------------|
| 数据管理与卷指令 |||
| 命令 | 描述 | 示例 |
| docker volume create | 创建一个新的卷 | docker volume create my_volume |
| docker volume ls | 列出所有卷 | docker volume ls |
| docker volume inspect | 显示指定卷的详细信息 | docker volume inspect my_volume |
| docker volume rm | 删除一个或多个卷 | docker volume rm my_volume |
| docker volume prune | 删除所有未使用的卷 | docker volume prune |
| docker cp | 从主机复制文件到容器,或者从容器复制到主机 | docker cp foo.txt mycontainer:/foo.txt |
| docker create | 创建一个新容器,用于数据卷 | docker create -v /dbdata --name dbstore training/postgres |
| docker run -v | 在运行容器时挂载卷 | docker run -d -P --name web -v /webapp training/webapp app.py |
| docker run --mount | 使用更详细的挂载配置运行容器 | docker run --mount source=my_volume,target=/data my_image |
| docker service create | 在服务中使用卷 | docker service create --replicas=1 --name my_service --mount type=volume,src=my_volume,dst=/data my_image |

|---------------------------|----------------|-------------------------------------------------------|
| 网络配置指令 |||
| 命令 | 描述 | 示例 |
| docker network create | 创建一个新的网络 | docker network create --driver bridge my_network |
| docker network ls | 列出所有网络 | docker network ls |
| docker network rm | 删除一个或多个网络 | docker network rm my_network |
| docker network inspect | 显示一个或多个网络的详细信息 | docker network inspect my_network |
| docker network connect | 连接一个容器到网络 | docker network connect my_network my_container |
| docker network disconnect | 断开容器与网络的连接 | docker network disconnect my_network my_container |
| docker run --network | 在特定网络下运行一个新的容器 | docker run --network=my_network my_image |
| docker network prune | 删除所有未使用的网络 | docker network prune |
| docker service create | 在特定网络下创建一个服务 | docker service create --network my_network my_service |

相关推荐
guo_wen_qiang5 小时前
docker的备份与迁移
运维·docker·容器
cpolar技术支持10 小时前
外网测试机的异常传不回内网?自托管 Sentry,用 cpolar 打通错误上报链路
python·nginx·docker·cpolar·sentry
MrSYJ13 小时前
别人再问你路由表是啥,这篇文章摔它脸上
docker·云原生·kubernetes
羑悻13 小时前
穿越Docker内核迷雾:揭秘镜像分层存储的叠加态与卷挂载的多维空间穿梭技术
后端·docker·容器
筑梦之路15 小时前
docker-compose方式部署kafka集群(Kraft方式)——筑梦之路
docker·容器·kafka
JavaPub-rodert15 小时前
Docker 镜像地址总失效?基于 DockerHub 项目用 GitHub Actions 做一个自动检测状态页
docker·容器·github
天衍四九-15 小时前
Docker 进阶实战系列(一):容器镜像安全,最小镜像与非 Root 运行
安全·docker·eureka
天衍四九-16 小时前
Docker进阶实战系列(二):容器日志深度治理|驱动配置、自动切割、磁盘爆满彻底解决
docker·容器·eureka
sbjdhjd16 小时前
云安全 | Docker 容器逃逸复盘(一):从隔离边界到运行时链路,如何确认自己身处容器
网络安全·docker·云原生·容器·kubernetes·云计算·云安全
溪语流沙16 小时前
【Web全栈进阶】PostgreSQL上手:Docker跑库 + 把早报站从SQLite迁过去
前端·docker·postgresql