Docker已经成为现代运维与开发部署的标配。本文整理一套可复用的Docker部署实践,从环境安装到多容器编排,一步步带你跑通。
一、自动化安装 Docker Engine
推荐使用”存储库+包管理器”的方式安装,适配Ubuntu/Debian/CentOS/RHEL等主流系统:
# 卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
# 安装依赖
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
# 添加官方GPG密钥
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 添加存储库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo $VERSION_CODENAME) stable" | sudo tee /etc/apt/sources.list.d/docker.list
# 安装
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 加入docker组,免sudo
sudo usermod -aG docker $USER
国内服务器建议配置镜像加速源,可以显著提升拉取速度。
二、用 Docker Compose 编排多容器
单容器用docker run还行,但一旦涉及数据库、缓存、应用多个容器,就必须上Compose。核心是把所有服务写进docker-compose.yml:
services:
app:
image: myapp:latest
ports:
- "8080:8080"
environment:
- DB_HOST=db
depends_on:
- db
db:
image: mysql:8.0
environment:
- MYSQL_ROOT_PASSWORD=changeme
volumes:
- ./data:/var/lib/mysql
然后一条命令启动全部:
docker compose up -d
三、部署与升级的简化思路
一个非常实用的原则是:把配置和代码分开。
- 代码/镜像可以随时升级
- 配置通过挂载卷(volumes)或环境变量注入
- 升级时只换镜像,配置从备份恢复
升级流程:停服务 → 备份数据 → 拉新镜像 → 启动 → 验证。这样即使升级失败,也能快速回滚。
四、常见避坑
- 数据持久化:容器删除后数据会丢,务必挂载卷
- 网络隔离:用自定义网络,别全部用host模式
- 日志管理:配置日志轮转,避免磁盘被日志撑爆
- 端口冲突:启动前检查端口占用
掌握以上基础,你就能把大部分自托管服务(如博客、网盘、监控、数据库)用Docker优雅地跑起来。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END














![囧次元[樱花动漫]去广告纯净版 - 浩宇工作室](https://umwx.oss-cn-shenzhen.aliyuncs.com/wp-content/uploads/2023/01/7ef194ec378b-1024x768.jpg)

![[电脑软件]抖音采集/下载工具TikTokDownloader 5.3 - 浩宇工作室](https://umwx.oss-cn-shenzhen.aliyuncs.com/wp-content/uploads/2024/05/20240510151922787-234818cqqjoo83p5s2us3e-1024x516.png)







暂无评论内容