神农架林区网站建设_网站建设公司_过渡效果_seo优化
2026/1/5 21:24:34 网站建设 项目流程
Docker 的常用命令,我会按照「镜像管理、容器管理、网络 / 数据卷、系统运维」四大核心场景整理高频命令,每个命令都附实用示例,新手也能快速上手,同时标注关键参数和使用技巧。
 

一、镜像管理(核心:拉取、构建、查看、删除)

 
镜像是容器的 “模板”,这部分命令是操作 Docker 的基础:
 
bash
# 1. 拉取镜像(从Docker Hub/私有仓库)
docker pull <镜像名:标签>  # 标签默认latest(最新版)
docker pull nginx:1.25    # 拉取指定版本的nginx镜像
docker pull mysql:8.0     # 拉取MySQL 8.0镜像# 2. 查看本地镜像
docker images             # 查看所有本地镜像(简写:docker image ls)
docker images -a          # 查看所有镜像(包括中间层)
docker images -q          # 只显示镜像ID(批量删除时常用)
docker inspect <镜像ID/名称>  # 查看镜像详细信息(如构建历史、配置)# 3. 构建镜像(通过Dockerfile)
docker build -t <镜像名:标签> <Dockerfile目录>  # -t指定镜像标签
docker build -t my-app:v1.0 ./  # 从当前目录的Dockerfile构建镜像,标签v1.0
docker build -f ./Dockerfile.prod -t my-app:prod ./  # 指定自定义Dockerfile名称# 4. 删除镜像
docker rmi <镜像ID/名称>   # 删除单个镜像(简写:docker image rm)
docker rmi $(docker images -q)  # 删除所有本地镜像(慎用!)
docker rmi -f <镜像ID>     # 强制删除(镜像被容器占用时)# 5. 推送镜像到仓库(私有仓库/Docker Hub)
docker tag <本地镜像名:标签> <仓库地址>/<镜像名:标签>  # 先打标签
docker tag my-app:v1.0 registry.example.com/my-app:v1.0
docker push registry.example.com/my-app:v1.0  # 推送# 6. 清理无用镜像(悬空镜像:无标签、无容器引用)
docker image prune -a  # -a清理所有未使用镜像,不加只清理悬空镜像
 
 

二、容器管理(核心:创建、启动、停止、进入、删除)

 
容器是镜像的运行实例,这部分是日常使用最频繁的命令:
 
bash
# 1. 创建并启动容器(最常用:run)
# 核心参数:
# -d:后台运行(守护进程)
# -p:端口映射(主机端口:容器端口)
# -v:数据卷挂载(主机目录:容器目录)
# --name:指定容器名称(避免随机名称)
# -it:交互式运行(配合/bin/bash进入容器)
# --rm:容器停止后自动删除(测试用)docker run -d -p 8080:80 --name my-nginx nginx:1.25  # 后台运行nginx,映射8080→80
docker run -it --rm ubuntu /bin/bash  # 交互式运行ubuntu,退出后删除容器
docker run -d -v /host/data:/container/data --name my-mysql mysql:8.0  # 挂载数据卷# 2. 查看容器
docker ps                 # 查看运行中的容器(简写:docker container ls)
docker ps -a              # 查看所有容器(包括停止的)
docker ps -q              # 只显示运行中容器的ID
docker ps -l              # 查看最后创建的容器# 3. 启动/停止/重启容器
docker start <容器ID/名称>  # 启动停止的容器
docker stop <容器ID/名称>   # 停止运行中的容器
docker restart <容器ID/名称> # 重启容器
docker kill <容器ID/名称>   # 强制停止容器(类似kill -9)# 4. 进入运行中的容器(调试用)
docker exec -it <容器ID/名称> /bin/bash  # 进入容器(bash)
docker exec -it <容器ID/名称> sh         # 轻量容器(如alpine)用sh
docker attach <容器ID/名称>              # 附加到容器(退出会停止容器,慎用)# 5. 查看容器日志
docker logs <容器ID/名称>   # 查看日志
docker logs -f <容器ID/名称> # 实时跟踪日志(类似tail -f)
docker logs --tail=100 <容器ID/名称>  # 查看最后100行日志
docker logs -t <容器ID/名称>  # 显示日志时间戳# 6. 删除容器
docker rm <容器ID/名称>     # 删除停止的容器(简写:docker container rm)
docker rm -f <容器ID/名称>   # 强制删除运行中的容器
docker rm $(docker ps -aq)   # 删除所有容器(慎用!)# 7. 查看容器详情/资源使用
docker inspect <容器ID/名称>  # 查看容器详细配置(网络、挂载、环境变量)
docker stats <容器ID/名称>    # 实时查看容器CPU/内存/网络使用情况# 8. 容器内文件复制(主机↔容器)
docker cp <主机文件路径> <容器ID/名称>:<容器路径>  # 主机→容器
docker cp <容器ID/名称>:<容器路径> <主机文件路径>  # 容器→主机

三、网络管理(自定义网络、端口映射)

 
Docker 网络用于容器间通信,默认桥接网络(bridge),也可自定义:
 
bash
# 1. 查看网络
docker network ls         # 查看所有网络
docker network inspect <网络名称>  # 查看网络详情(包含连接的容器)# 2. 创建自定义网络(推荐:容器间用名称通信,无需IP)
docker network create my-network  # 创建桥接网络
docker run -d --name nginx1 --network my-network nginx  # 容器加入自定义网络
docker run -d --name nginx2 --network my-network nginx  # 同一网络内,nginx1可直接ping通nginx2# 3. 容器连接/断开网络
docker network connect my-network <容器ID/名称>  # 容器加入网络
docker network disconnect my-network <容器ID/名称>  # 容器断开网络# 4. 删除网络
docker network rm <网络名称>
docker network prune       # 清理未使用的网络
 
 

四、数据卷管理(持久化数据,避免容器删除丢失)

 
数据卷是 Docker 的持久化方案,独立于容器生命周期:
 
bash
# 1. 查看数据卷
docker volume ls          # 查看所有数据卷
docker volume inspect <卷名称>  # 查看数据卷详情(存储路径)# 2. 创建数据卷
docker volume create my-volume  # 创建命名数据卷# 3. 挂载数据卷到容器(推荐用--mount,更清晰)
docker run -d -v my-volume:/data --name my-app my-app:v1.0  # 简写方式
docker run -d --mount source=my-volume,target=/data --name my-app my-app:v1.0  # 推荐方式# 4. 删除数据卷
docker volume rm <卷名称>
docker volume prune       # 清理未使用的数据卷(容器已删除但卷残留)
 
 

五、系统运维(清理、信息查看)

 
bash
# 1. 清理所有无用资源(容器、镜像、网络、数据卷)
docker system prune -a    # -a包含未使用镜像,不加只清理容器/网络/悬空镜像
docker system prune --volumes  # 同时清理未使用的数据卷(慎用)# 2. 查看Docker系统信息
docker info               # 查看Docker版本、驱动、节点数(集群)等
docker system df          # 查看Docker磁盘使用情况(镜像/容器/数据卷)
 

六、常用快捷技巧

  1. 命令别名:设置别名简化输入,如alias d=dockeralias dps='docker ps -a'
  2. 批量操作:结合$(docker ps -aq)实现批量删除容器,$(docker images -q)批量删除镜像;
  3. 后台运行 + 自动重启:docker run -d --restart=always --name my-nginx nginx(容器退出自动重启);
  4. 查看容器 IP:docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <容器ID>
 

总结

 
  1. 核心高频命令:
    • 镜像:docker pull/build/images/rmi
    • 容器:docker run/ps/exec/logs/stop/rm
    • 数据卷 / 网络:docker volume/network ls/create/rm
     
  2. 关键参数:-d(后台)、-p(端口)、-v(挂载)、-it(交互)、--name(命名)是docker run的核心;
  3. 运维重点:定期用docker system prune清理无用资源,避免磁盘占用过高;数据持久化优先用数据卷(volume)而非主机目录挂载。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询