服务器上使用 Docker 的常用命令清单

Ubuntu 服务器上使用 Docker 的常用命令清单 ,涵盖 镜像管理、容器操作、日志查看、网络与端口、清理资源 等核心场景,适合日常开发和运维。


🐳 一、镜像(Image)相关

命令 说明
docker images 列出本地所有镜像
docker build -t 镜像名 . 从当前目录的 Dockerfile 构建镜像(. 是构建上下文)
docker rmi 镜像名或ID 删除指定镜像
docker rmi $(docker images -q) 删除所有镜像(慎用)
docker pull 镜像名 从仓库拉取镜像(如 docker pull nginx

📦 二、容器(Container)管理

启动容器

复制代码

bash

编辑

复制代码
# 后台运行(推荐部署用)
docker run -d --name 容器名 -p 主机端口:容器端口 镜像名

# 示例:启动 FastAPI
docker run -d --name backend -p 8000:8000 fastapi-backend

查看容器

命令 说明
docker ps 查看正在运行的容器
docker ps -a 查看所有容器(包括已停止的)
docker inspect 容器名 查看容器详细信息(IP、挂载、环境变量等)

停止/删除容器

命令 说明
docker stop 容器名 优雅停止容器
docker kill 容器名 强制终止容器
docker rm 容器名 删除已停止的容器
docker rm -f 容器名 强制停止并删除容器(最常用)
docker rm -f $(docker ps -aq) 删除所有容器(慎用)

📝 三、日志与调试

命令 说明
docker logs 容器名 查看容器完整日志
docker logs -f 容器名 实时跟踪日志 (类似 tail -f
docker logs --tail 50 容器名 查看最近 50 行日志
docker logs -t 容器名 显示带时间戳的日志
docker exec -it 容器名 sh 进入容器内部(调试用) (如果容器有 bash,可用 bash 替代 sh

💡 调试示例:

复制代码

bash

编辑

复制代码
docker exec -it backend sh
ls /app          # 查看文件是否复制成功
python -c "import app.config"  # 测试模块导入

🌐 四、端口与网络

命令 说明
-p 8000:8000 将主机 8000 端口映射到容器 8000 端口
docker port 容器名 查看容器端口映射情况
curl http://localhost:8000 在服务器本地测试服务是否通

⚠️ 注意:外网访问需在云平台(如腾讯云、阿里云)安全组/防火墙中放行对应端口


🧹 五、清理与释放空间

命令 说明
docker system prune 删除所有停止的容器、无用网络、构建缓存
docker system prune -a 删除所有未使用的镜像 + 上述内容(更彻底)
docker volume prune 清理无用数据卷
docker image prune 清理悬空(dangling)镜像

✅ 建议定期执行 docker system prune 释放磁盘空间。


🚀 六、部署 FastAPI 常用完整流程

复制代码

bash

编辑

复制代码
# 1. 进入项目目录
cd /home/ubuntu/app/backend

# 2. 构建镜像
docker build -t fastapi-backend .

# 3. 停止旧容器(如果存在)
docker rm -f backend

# 4. 启动新容器
docker run -d --name backend -p 8000:8000 fastapi-backend

# 5. 查看日志
docker logs -f backend

# 6. 本地测试
curl http://localhost:8000

🔒 七、权限问题(常见)

如果遇到权限错误(如 Got permission denied while trying to connect to the Docker daemon),可将用户加入 docker 组:

复制代码

bash

编辑

复制代码
sudo usermod -aG docker ubuntu
# 然后重新登录 SSH
相关推荐
Ka1Yan10 小时前
Docker:基本概念与快速入门
运维·docker·容器
糠帅傅蓝烧牛肉面13 小时前
单实例多MCP聚合服务:两种实现方案深度对比
前端·docker·ai
杨浦老苏16 小时前
离线优先的自托管笔记应用Anchor
笔记·docker·群晖
哪里不会点哪里.20 小时前
Docker
运维·docker·容器
七七powerful20 小时前
docker 搭建wtsap代理
运维·docker·容器
Shanxun Liao21 小时前
Docker vlmcsd 完整管理指南
运维·docker·容器
怒放de生命20101 天前
前端子包+docker流水线部署+nginx代理部署
前端·nginx·docker
Java程序员威哥1 天前
云原生Java应用优化实战:资源限制+JVM参数调优,容器启动快50%
java·开发语言·jvm·python·docker·云原生
大房身镇、王师傅1 天前
【Docker】RockyLinux10 安装 docker-compose
运维·docker·容器·docker-compose·rockylinux10
Java程序员威哥1 天前
Java微服务可观测性实战:Prometheus+Grafana+SkyWalking全链路监控落地
java·开发语言·python·docker·微服务·grafana·prometheus