Docker 是现代化应用部署的核心工具,掌握容器管理命令是开发运维必备技能。以下分类整理的关键命令及使用场景,建议收藏备用:
一、生命周期管理 1. 启动容器
docker run -itd --name my_container -p 8080:80 nginx:latest
# -i 交互模式 -t 分配伪终端 -d 后台运行
# --name 指定容器名 -p 端口映射(主机:容器)
docker start/stop/restart my_container # 启停容器
docker pause/unpause my_container # 暂停/恢复
docker kill -s SIGTERM my_container # 发送特定信号
二、状态监控 1. 查看容器
docker ps -a --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"
# -a 显示所有容器(包括停止的)
# --format 自定义输出格式
docker stats --no-stream # 实时资源占用
docker top my_container # 查看进程列表
docker inspect -f '{{.NetworkSettings.IPAddress}}' my_container # 获取特定信息
三、配置管理 1. 环境变量
docker run -e "ENV_VAR=value" ... # 运行时设置变量
docker exec my_container env # 查看已有变量
docker volume create my_vol # 创建数据卷
docker run -v /host/path:/container/path ... # 目录挂载
docker cp my_container:/path /host/path # 宿主机与容器间文件拷贝
四、网络管理
docker network ls # 列出所有网络
docker network inspect bridge # 查看网络详情
docker run --network=host ... # 使用主机网络模式
五、批量操作技巧 1. 批量清理
docker container prune # 删除所有停止的容器
docker rmi $(docker images -q) # 删除所有镜像(慎用)
docker logs -f --tail 100 my_container # 实时查看最后100行日志
docker logs --since 2023-01-01 my_container # 按时间筛选
六、高阶技巧 1. 容器更新
docker update --memory 512M my_container # 修改资源限制
docker rename old_name new_name # 重命名容器
docker checkpoint create my_container backup1 # 创建检查点(需安装CRIU)
常见问题处理: 1. 容器卡死时:
docker exec -it my_container /bin/sh # 尝试进入救援shell
docker network disconnect bridge my_container # 断开网络连接
建议通过别名简化常用命令:
alias dps='docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"'
掌握这些命令后,可以高效管理90%的日常Docker运维场景。对于生产环境,建议配合Docker Compose或Kubernetes进行编排管理。