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

发布于:2025-07-31 ⋅ 阅读:(21) ⋅ 点赞:(0)

📦 一、容器生命周期管理

命令 参数说明 示例
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 限制内存

📝 附:组合命令示例

# 批量停止所有容器
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


网站公告

今日签到

点亮在社区的每一天
去签到