Docker常用命令速查手册:容器运维七维指南

📦 一、容器生命周期管理

命令 参数说明 示例
docker run 创建并启动容器 -d 后台运行 -p 宿主机:容器 端口映射 -v 宿主机:容器 卷挂载 --name 命名容器 --rm 退出后自动删除 docker run -d -p 8080:80 --name nginx nginx:latest
docker start/stop/restart 启停容器 -a 附加输出流 -t 秒数 超时停止 docker restart -t 10 my_container
docker rm 删除容器 -f 强制删除运行中容器 -v 同时删除卷 docker rm -fv old_container
docker exec 执行命令 -it 交互模式 -e VAR=value 设置环境变量 docker exec -it redis redis-cli

️🪞 二、镜像操作

命令 说明 示例
docker build 构建镜像 -t 名称:标签 指定标签 --no-cache 禁用缓存 docker build -t myapp:v1 .
docker pull/push 拉取/推送镜像 -a 拉取所有版本 --disable-content-trust 跳过验证 docker push registry.mycorp.com/app:v2
docker images 列出镜像 -q 只显示ID --digests 显示摘要 docker images --filter "dangling=false"
docker rmi 删除镜像 -f 强制删除 --no-prune 保留父层 docker rmi $(docker images -q "temp_*")

📊 三、监控与日志

命令 关键参数 使用场景
docker ps -a 显示所有容器 -l 最新容器 -s 显示大小 docker ps -f "status=running"
docker logs -f 实时跟踪 --tail N 末尾N行 -t 显示时间戳 docker logs -f --until=2m app
docker stats --no-stream 单次输出 --format 自定义格式 docker stats --format "{``{.Container}} {``{.CPUPerc}}"
docker top 无参数 查看容器进程树:docker top nginx

🌐 四、网络管理

命令 功能 示例
docker network create 创建网络 --subnet 指定子网 --driver 驱动类型 docker network create --subnet=172.20.0.0/24 mynet
docker network connect 容器加入网络 --ip 指定IP docker network connect --ip 172.20.0.5 mynet web
docker network inspect 查看网络详情 docker network inspect -f '{``{.IPAM.Config}}' bridge

💾 五、数据卷管理

命令 说明 实战技巧
docker volume create 创建具名卷 --driver 指定驱动 docker volume create --opt type=nfs app_data
docker volume ls 列出卷 -q 仅显示名称 清理未使用卷: docker volume prune
docker cp 宿主机⇄容器文件复制 docker cp config.yml app:/etc/app/

🛠️ 六、系统维护

命令 用途 重要参数
docker system prune 清理资源 -a 删除未使用镜像 --volumes 删除卷
docker info 显示系统信息 -f json 输出JSON格式
docker update 更新容器配置 --cpus 2 限制CPU --memory 512m 限制内存

📝 附:组合命令示例

bash 复制代码
# 批量停止所有容器
docker stop $(docker ps -q)
 
# 构建镜像并推送到仓库
docker build -t myrepo/app:v3 . && docker push myrepo/app:v3
 
# 备份MySQL数据到宿主机
docker run --rm -v mysql_data:/volume -v $PWD:/backup alpine tar czf /backup/mysql-$(date +%Y%m%d).tar.gz /volume
 

⚠️ 七、安全最佳实践

  1. 非root用户运行
    docker run --user 1000:1000 python
  2. 只读文件系统
    docker run --read-only -v /tmp:/tmp app
  3. 资源限制
    docker run --cpus=1.5 --memory=1g app
  4. 扫描漏洞
    docker scan nginx:latest

完整文档:Docker Official Docs

相关推荐
蜀山雪松6 小时前
全网首先 Docker Compose 启动Postgresql18
运维·docker·容器
你的人类朋友6 小时前
【Docker】说说卷挂载与绑定挂载
后端·docker·容器
邂逅星河浪漫8 小时前
【RabbitMQ】docker-compose编排部署RabbitMQ容器——CentOS
分布式·docker·centos·rabbitmq·docker-compose
zrande8 小时前
Docker经典安装命令失效排查:Ubuntu/CentOS多系统测试与解决方案
ubuntu·docker·centos
计算机小手10 小时前
内网穿透系列十四:基于Websocket传输协议实现的异地组网工具 candy,简单安全稳定
经验分享·网络协议·docker·开源软件
SirLancelot111 小时前
MinIO-基本介绍(一)基本概念、特点、适用场景
后端·云原生·中间件·容器·aws·对象存储·minio
Molesidy13 小时前
【Docker】基于Ubuntu的Docker的日常使用方法
nginx·ubuntu·docker
Broken Arrows14 小时前
k8s学习(一)——kubernetes重要基础概念概述
学习·容器·kubernetes
Lin_Aries_042116 小时前
基于 CI/CD 平台将应用程序自动部署到 Kubernetes 集群
运维·ci/cd·docker·云原生·容器·kubernetes·jenkins
神秘人X7071 天前
Docker 镜像结构详解
运维·docker·容器