当前位置: 首页 > news >正文

Docker容器常用命令汇总


🐳 Docker 常用命令速查卡片

📦 镜像操作(Image)

# 搜索镜像
docker search 镜像名# 拉取镜像
docker pull 镜像名[:标签]# 查看镜像
docker images# 删除镜像
docker rmi 镜像ID# 给镜像打标签
docker tag 镜像ID 新名称:标签# 构建镜像
docker build -t 镜像名 .# 查看镜像详情
docker inspect 镜像ID

🧱 容器操作(Container)

# 创建但不启动容器
docker create --name 容器名 镜像名# 启动容器
docker start 容器名# 停止容器
docker stop 容器名# 重启容器
docker restart 容器名# 删除容器
docker rm 容器名# 强制删除
docker rm -f 容器名# 查看运行中容器
docker ps# 查看所有容器
docker ps -a# 查看容器日志
docker logs [-f] 容器名# 进入容器
docker exec -it 容器名 /bin/bash# 容器与主机互拷文件
docker cp 容器名:/容器路径 本地路径
docker cp 本地路径 容器名:/容器路径# 查看容器资源使用
docker stats

🌐 网络与端口

# 运行并映射端口
docker run -p 8080:80 镜像名# 查看容器 IP
docker inspect -f '{{.NetworkSettings.IPAddress}}' 容器名# 网络创建与管理
docker network create 网络名
docker network ls
docker network inspect 网络名
docker network connect 网络名 容器名
docker network disconnect 网络名 容器名

⚙️ 容器运行参数常用组合

docker run -d \--name 容器名 \-p 主机端口:容器端口 \-v 主机路径:容器路径 \-e "环境变量=值" \--restart always \镜像名

🧹 清理命令

# 删除停止的容器
docker container prune# 删除未使用的镜像
docker image prune# 删除未使用的资源
docker system prune# 删除所有容器(危险)
docker rm $(docker ps -aq)# 删除所有镜像(危险)
docker rmi $(docker images -q)

🧾 Docker Compose

# 启动服务
docker-compose up# 后台启动
docker-compose up -d# 停止并删除
docker-compose down# 查看日志
docker-compose logs [-f]# 重启服务
docker-compose restart# 查看状态
docker-compose ps# 构建镜像
docker-compose build

🚀 日常运维命令速查卡片(进阶篇)

✅ 启动 & 停止容器(批量操作)

# 启动所有容器
docker start $(docker ps -a -q)# 停止所有运行中的容器
docker stop $(docker ps -q)# 停止并删除所有容器
docker stop $(docker ps -q) && docker rm $(docker ps -a -q)

🧼 清理空间

# 删除所有未被使用的镜像
docker image prune -a# 删除所有已停止的容器
docker container prune# 一键清理所有未使用资源(包括网络、卷等)
docker system prune -a# 删除所有卷(小心使用)
docker volume prune

🗂 文件操作(容器 ↔ 主机)

# 从容器中拷贝文件到主机
docker cp 容器ID:/path/in/container /path/on/host# 从主机拷贝文件到容器中
docker cp /path/on/host 容器ID:/path/in/container# 示例:将日志文件拷出
docker cp my-container:/var/log/app.log ./app.log# 示例:将配置文件拷入容器
docker cp ./nginx.conf my-nginx:/etc/nginx/nginx.conf

🔍 网络 & 端口调试

# 查看容器监听端口
docker port 容器名# 查看容器网络 IP
docker inspect -f '{{.NetworkSettings.IPAddress}}' 容器名# 查看所有容器及网络连接
docker network inspect bridge# 检查容器是否能连通某地址
docker exec 容器名 ping 172.18.0.1# 检查容器内端口监听情况
docker exec 容器名 netstat -tulnp
docker exec 容器名 ss -tuln

🐞 容器日志 & Debug

# 实时查看容器日志
docker logs -f 容器名# 查看最近 100 行日志
docker logs --tail 100 容器名# 进入容器交互终端
docker exec -it 容器名 /bin/bash# 容器中查看环境变量
docker exec 容器名 printenv# 临时运行一个交互式容器(测试用)
docker run --rm -it busybox /bin/sh

🧰 容器部署维护场景示例

🎯 示例:部署 Nginx 并挂载配置
docker run -d \--name nginx \-p 8080:80 \-v $(pwd)/nginx.conf:/etc/nginx/nginx.conf \nginx
📋 示例:数据库容器 + 数据持久化
docker run -d \--name mysql \-p 3306:3306 \-e MYSQL_ROOT_PASSWORD=123456 \-v /mydata/mysql:/var/lib/mysql \mysql:5.7

💡 小技巧

场景命令
查看容器启动命令docker inspect --format '{{.Path}} {{range .Args}} {{.}} {{end}}' 容器名
查看容器运行时间docker ps -a --format "{{.Names}}\t{{.Status}}"
修改运行容器配置(需要重新创建)docker commit + docker run
使用容器网络联通测试docker network connect 网络名 容器名

http://www.xdnf.cn/news/1061209.html

相关文章:

  • 华为云Flexus+DeepSeek征文 | 利用Dify平台构建多智能体协作系统:从单体到集群的完整方案
  • python自助棋牌室管理系统
  • 全面掌握 C++ 基础:关键特性与进化
  • Llama 4 模型卡及提示格式介绍
  • svn客户端使用教程简易入门:附外网远程访问内网SVN服务通用方法
  • 【服务器R环境架构】基于 micromamba下载 R 库包
  • React封装框架dvajs(状态管理+异步操作+数据订阅等)
  • Windsurf SWE-1模型评析:软件工程的AI革命
  • TensorFlow+CNN垃圾分类深度学习全流程实战教程
  • Python设计模式终极指南:18种模式详解+正反案例对比+框架源码剖析
  • STM32 HAL 初始化I2C启动DS1307
  • FPGA基础 -- Verilog 命名事件
  • QT6与VS下实现没有CMD窗口的C++控制台程序
  • MySQL 的 WITH ROLLUP 功能
  • python画三维立体图
  • 容器运行时保护:用Falco构建云原生安全防线
  • angular 图斑点击,列表选中并滚动到中间位置
  • ROS学习之服务通信
  • 2025虚幻引擎文件与文件夹命名规律
  • Tensorflow C++ API从入门到放弃
  • STUN (Session Traversal Utilities for NAT) 服务器是一种网络协议
  • MySQL八股文
  • AIGC - Prompt Optimizer 提示词优化器
  • 编程马拉松的定义、运作与发展
  • 解锁微服务潜能:深入浅出 Nacos
  • S32DS上进行S32K328的时钟配置,LPUART时钟配置步骤详解
  • SSH服务与rsync服务配置实战
  • FPGA基础 -- Verilog 概率分布函数
  • Stable Diffusion 实战-手机壁纸制作 第二篇:优化那些“崩脸”和“马赛克”问题,让图像更加完美!
  • 【LLM学习笔记3】搭建基于chatgpt的问答系统(下)