蓝易云CDN:Docker 搭建基本服务完整指南 🚀
在现代运维体系中,Docker 已成为部署基础服务的标准工具。其核心优势是:<span style="color:red">环境隔离、快速部署、可移植性强</span>。下面给出标准化搭建流程与示例。
一、安装 Docker(以 Ubuntu 为例)⚙️
1️⃣ 更新系统
sudo apt update解释:
apt update:同步软件仓库索引- 确保后续安装使用最新包信息
2️⃣ 安装 Docker
sudo apt install -y docker.io解释:
docker.io:Ubuntu 官方仓库中的 Docker 引擎-y:自动确认安装
3️⃣ 启动并设置开机自启
sudo systemctl enable docker
sudo systemctl start docker解释:
| 命令 | 作用 |
|---|---|
| enable | 开机自动启动 |
| start | 立即启动服务 |
验证:
docker --version若显示版本号说明安装成功。
二、Docker 基本概念说明 🧠
| 名称 | 说明 |
|---|---|
| Image | 镜像,运行模板 |
| Container | 容器,运行实例 |
| Volume | 数据卷,持久存储 |
| Network | 网络模式 |
简单模型公式:
容器 = 镜像 + 运行参数 + 资源限制三、搭建 Nginx 服务示例 🌐
1️⃣ 拉取镜像
docker pull nginx解释:
- 从官方镜像仓库下载 nginx 镜像
2️⃣ 运行容器
docker run -d -p 80:80 --name mynginx nginx解释:
| 参数 | 含义 |
|---|---|
| -d | 后台运行 |
| -p 80:80 | 宿主机80映射容器80 |
| --name | 容器名称 |
| nginx | 使用的镜像 |
访问服务器IP即可看到默认页面。
四、搭建 MySQL 服务示例 🗄
docker run -d \
-p 3306:3306 \
--name mysql8 \
-e MYSQL_ROOT_PASSWORD=123456 \
-v /data/mysql:/var/lib/mysql \
mysql:8解释:
| 参数 | 说明 |
|---|---|
| -e | 设置环境变量 |
| MYSQL_ROOT_PASSWORD | root密码 |
| -v | 数据持久化映射 |
| mysql:8 | 指定版本 |
<span style="color:red">数据必须挂载数据卷,否则删除容器数据会丢失</span>。
五、推荐使用 docker-compose 管理多服务 🧩
创建 docker-compose.yml:
version: '3'
services:
nginx:
image: nginx
ports:
- "80:80"
mysql:
image: mysql:8
environment:
MYSQL_ROOT_PASSWORD: 123456
volumes:
- ./mysql:/var/lib/mysql启动:
docker compose up -d解释:
compose up:创建并启动服务-d:后台运行
六、部署流程图 📊
七、基础服务推荐结构 🔐
| 服务类型 | 建议部署方式 |
|---|---|
| Web服务 | Nginx容器 |
| 数据库 | 独立容器 + 数据卷 |
| 缓存 | Redis容器 |
| API | 应用镜像 |
八、生产环境注意事项 ⚠️
- <span style="color:red">不要使用 latest 标签</span>
- 必须挂载数据卷
- 限制容器资源:
--memory="1g" --cpus="1.0"解释:
- 限制容器最大内存
- 限制CPU核心使用率
九、总结 🎯
Docker 搭建基本服务的核心逻辑是:
- 安装引擎
- 拉取镜像
- 配置端口
- 持久化数据
- 合理限制资源
容器不是虚拟机,而是进程级隔离。
真正的稳定部署来自:
<span style="color:red">版本固定 + 数据持久化 + 资源限制</span>。
基础架构稳,业务才稳。 🚀
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。