服务器上使用 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
相关推荐
小p1 天前
docker学习: 1. docker基本使用
docker
崔小汤呀1 天前
Docker部署Nacos
docker·容器
缓解AI焦虑1 天前
Docker + K8s 部署大模型推理服务:资源划分与多实例调度
docker·容器
1candobetter2 天前
Docker Compose Build 与 Up 的区别:什么时候必须重建镜像
docker·容器·eureka
シ風箏2 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
BugShare2 天前
继《小爱音响》详细说下怎么部署,尤其是关于Docker部分
docker·nas·xiaomusic
小马爱打代码2 天前
Docker:完全指南从入门到精通
运维·docker·容器
ITKEY_2 天前
docker 容器端口映射消失
docker·容器
倚肆2 天前
在 Windows Docker 中安装并配置 Nginx (映射 Windows 端口与路径)
windows·nginx·docker