Pradumnasaraf/DevOps项目中的Docker命令完全指南

Pradumnasaraf/DevOps项目中的Docker命令完全指南

前言

Docker作为现代DevOps实践中不可或缺的工具,其命令体系庞大而复杂。本文将系统梳理Pradumnasaraf/DevOps项目中整理的Docker命令,帮助开发者快速掌握Docker的核心操作。

Docker基础命令

版本与环境检查

在开始使用Docker前,首先需要确认Docker环境是否正常:

docker version

这条命令会显示Docker客户端和服务端的版本信息,是排查环境问题的第一步。

镜像管理

镜像是Docker的核心概念,以下是常用镜像操作:

docker images  # 列出本地所有镜像
docker pull nginx  # 从仓库拉取镜像
docker rmi nginx  # 删除指定镜像
docker rmi $(docker images -q)  # 删除所有镜像(谨慎使用)

特别提示:docker pull命令默认会拉取latest标签的镜像,生产环境建议明确指定版本号,如nginx:1.21.6

容器生命周期管理

容器启停

docker run -d -p 8080:80 --name mynginx nginx  # 启动容器
docker stop mynginx  # 停止容器
docker start mynginx  # 启动已停止的容器
docker restart mynginx  # 重启容器

参数说明:

  • -d: 后台运行(守护进程模式)
  • -p: 端口映射(主机端口:容器端口)
  • --name: 为容器指定名称

容器监控

docker ps  # 查看运行中的容器
docker ps -a  # 查看所有容器(包括已停止的)
docker stats mynginx  # 查看容器资源使用情况
docker logs mynginx  # 查看容器日志
docker inspect mynginx  # 查看容器详细信息

容器交互

进入运行中的容器进行调试:

docker exec -it mynginx bash

注意:不是所有镜像都包含bash,对于精简版镜像可以尝试使用sh

网络管理

Docker网络是容器间通信的基础:

docker network ls  # 列出所有网络
docker network create mynet  # 创建自定义网络
docker run --network=mynet nginx  # 在指定网络中运行容器
docker network inspect mynet  # 查看网络详情

数据持久化

Docker提供了多种数据持久化方案:

绑定挂载

docker run -v /host/path:/container/path nginx

这种方式的优点是开发时可以直接修改主机文件,容器内会实时同步。

卷管理

docker volume create myvol  # 创建卷
docker run -v myvol:/container/path nginx  # 使用卷

卷相比绑定挂载更易于备份和迁移。

Docker Compose

Compose是管理多容器应用的神器:

docker compose up -d  # 启动服务
docker compose down  # 停止并移除服务
docker compose logs  # 查看服务日志

高级用法:

docker compose -f docker-compose.yml -f docker-compose.prod.yml up  # 多文件组合
docker compose up --build  # 重新构建镜像

Docker Swarm与服务编排

Swarm是Docker原生的集群管理工具:

docker swarm init  # 初始化Swarm集群
docker service create --replicas 3 -p 8080:80 --name web nginx  # 创建服务
docker service scale web=5  # 扩展服务实例数
docker service update --image nginx:1.21 web  # 滚动更新服务

实用技巧

  1. 批量清理
docker container prune  # 清理停止的容器
docker image prune  # 清理未使用的镜像
  1. 临时容器
docker run --rm -it ubuntu bash  # 退出后自动删除容器
  1. 构建自定义镜像
docker build -t myapp:1.0 .

总结

本文基于Pradumnasaraf/DevOps项目中的Docker命令文档,系统梳理了从基础到进阶的Docker操作。掌握这些命令后,你将能够:

  • 高效管理Docker镜像和容器
  • 配置容器网络和数据持久化
  • 使用Compose编排多容器应用
  • 通过Swarm实现服务集群管理

建议读者在实际操作中逐步尝试这些命令,结合具体项目需求灵活运用。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

邴梅忱Walter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值