目 录CONTENT

文章目录

docker常用命令

张小凡
2025-07-10 / 0 评论 / 6 点赞 / 62 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
本文最后更新于2025-10-18,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

Docker高手进阶:掌握这些命令让你效率翻倍

在日常DevOps工作中,我们经常需要快速管理和操作Docker容器及镜像。本文将从实际场景出发,介绍那些真正实用但容易被忽视的Docker命令,帮助你在容器化环境中游刃有余。

镜像管理:不只是增删改查

搜索优质镜像

# 搜索官方认证镜像
docker search --filter is-official=true nginx

# 搜索高星级镜像
docker search --filter stars=100 nginx

智能拉取镜像

# 只拉取最新稳定版
docker pull nginx:stable

# 拉取特定平台镜像(跨架构部署)
docker pull --platform linux/arm64 nginx

镜像分析与优化

# 查看镜像详细信息
docker inspect nginx:latest

# 分析镜像构成层次
docker history nginx:latest

# 清理悬空镜像(释放空间必备)
docker image prune

# 清理所有未使用的镜像
docker image prune -a

高效镜像传输

# 导出压缩镜像(节省传输时间)
docker save nginx:latest | gzip > nginx.tar.gz

# 导入压缩镜像
gunzip -c nginx.tar.gz | docker load

容器操控:灵活运用生命周期

容器启动艺术

# 后台运行并指定重启策略
docker run -d --restart=unless-stopped --name web nginx

# 一次性运行容器(执行完自动删除)
docker run --rm alpine echo "Hello World"

# 限制资源使用
docker run -d --memory=512m --cpus=0.5 --name limited-nginx nginx

容器状态监控

# 实时查看容器资源使用情况
docker stats

# 查看指定容器统计信息
docker stats web

# 查看容器进程
docker top web

容器交互技巧

# 在运行的容器中执行命令
docker exec web ps aux

# 以新TTY进入容器(更好的交互体验)
docker exec -it web /bin/bash

# 将本地文件复制到容器
docker cp ./local-file.txt web:/container-path/

# 从容器复制文件到本地
docker cp web:/container-path/file.txt ./local-file.txt

批量操作容器

# 停止所有运行中的容器
docker stop $(docker ps -q)

# 删除所有停止的容器
docker container prune

# 删除所有容器(谨慎使用)
docker rm -f $(docker ps -aq)

数据持久化:卷的高级玩法

卷管理最佳实践

# 创建具名卷(方便管理)
docker volume create my-data

# 查看卷使用详情
docker volume inspect my-data

# 备份卷数据
docker run --rm -v my-data:/data -v $(pwd):/backup alpine tar czf /backup/data.tar.gz -C /data .

# 恢复卷数据
docker run --rm -v my-data:/data -v $(pwd):/backup alpine tar xzf /backup/data.tar.gz -C /data .

网络配置:连接容器的艺术

自定义网络

# 创建自定义桥接网络
docker network create --driver bridge my-network

# 在自定义网络中运行容器
docker run -d --network my-network --name web nginx

# 连接运行中的容器到网络
docker network connect my-network web

# 断开容器与网络连接
docker network disconnect my-network web

仓库管理:私有化部署必备

认证与安全

# 登录私有仓库
docker login registry.example.com

# 使用加密方式登录
docker login registry.example.com --password-stdin < password.txt

# 登出仓库
docker logout registry.example.com

实用技巧:提高工作效率

日志管理

# 查看实时日志
docker logs -f web

# 查看最近1小时日志
docker logs --since 1h web

# 查看最后100行日志
docker logs --tail 100 web

系统维护

# 查看Docker磁盘使用情况
docker system df

# 清理系统(清理所有未使用的容器、网络、镜像)
docker system prune

# 彻底清理(包括未使用的卷)
docker system prune -a --volumes

组合技:复杂场景应对

# 快速创建临时调试环境
docker run -it --rm -v /var/run/docker.sock:/var/run/docker.sock docker sh

# 运行带host网络的容器(性能优化)
docker run -d --network host --name web nginx

# 运行特权模式容器(特殊需求)
docker run -d --privileged --name special-container alpine

总结

熟练掌握这些Docker命令不仅能够提高日常运维效率,还能帮助你更好地理解和控制容器化环境。记住,最好的实践是在真实场景中不断尝试和应用这些命令。

参考资料

6
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区