在京东云轻量服务器上部署多个 Docker 容器是一个常见的需求,可以通过以下步骤实现。以下是详细的操作流程和建议:
✅ 一、准备工作
-
购买并登录京东云轻量服务器
- 登录 京东云控制台
- 购买一台轻量应用服务器(推荐选择 Ubuntu/CentOS 系统)
- 获取公网 IP 和 SSH 登录信息(用户名/密码或密钥)
-
连接服务器
使用 SSH 工具(如ssh命令、Xshell、PuTTY)连接到服务器:ssh root@your_server_ip
✅ 二、安装 Docker
-
更新系统包
sudo apt update && sudo apt upgrade -y # Ubuntu/Debian # 或 sudo yum update -y # CentOS -
安装 Docker
推荐使用官方脚本安装:curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh -
启动并设置开机自启
sudo systemctl start docker sudo systemctl enable docker -
将当前用户加入
docker组(可选)sudo usermod -aG docker $USER退出重新登录以生效。
✅ 三、部署多个 Docker 容器的方式
方法一:使用 docker run 命令直接运行多个容器(适合简单场景)
# 启动 Nginx 容器
sudo docker run -d --name nginx -p 80:80 nginx
# 启动 MySQL 容器
sudo docker run -d --name mysql -p 3306:3306
-e MYSQL_ROOT_PASSWORD=yourpassword
-v /data/mysql:/var/lib/mysql
mysql:8.0
# 启动 Redis 容器
sudo docker run -d --name redis -p 6379:6379 redis:alpine
注意:每个容器必须有唯一名称和端口映射不冲突。
方法二:使用 Docker Compose(推荐方式,便于管理多个容器)
-
安装 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose验证安装:
docker-compose --version -
创建
docker-compose.yml文件创建项目目录并编写配置文件:
mkdir myapp && cd myapp nano docker-compose.yml示例内容(Nginx + Flask + Redis):
version: '3.8' services: web: image: nginx:alpine ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/nginx.conf depends_on: - app app: build: ./app expose: - "5000" environment: - REDIS_HOST=redis redis: image: redis:alpine expose: - "6379"你可以根据实际需要替换为自己的服务(如 WordPress + MySQL + phpMyAdmin 等)
-
启动所有容器
docker-compose up -d -
常用命令
docker-compose ps # 查看运行状态 docker-compose logs # 查看日志 docker-compose down # 停止并删除容器
✅ 四、注意事项
-
端口冲突
- 确保宿主机端口未被占用(如 80、443、3306、6379 等)
- 可通过
netstat -tuln | grep :端口检查
-
数据持久化
- 使用
-v挂载卷保存数据库、配置等重要数据 - 如:
-v /data/mysql:/var/lib/mysql
- 使用
-
防火墙与安全组
- 在京东云控制台中配置 安全组规则,开放所需端口(如 80, 443, 3306 等)
- Linux 内部防火墙(如
ufw或firewalld)也需放行端口
-
资源监控
- 轻量服务器资源有限(如 2C4G),避免部署过多高负载服务
- 使用
docker stats实时查看容器资源占用
✅ 五、示例:部署 WordPress + MySQL
# docker-compose.yml
version: '3.8'
services:
wordpress:
image: wordpress:latest
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wpuser
WORDPRESS_DB_PASSWORD: wppass
WORDPRESS_DB_NAME: wpdb
volumes:
- wordpress_data:/var/www/html
depends_on:
- db
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: wpdb
MYSQL_USER: wpuser
MYSQL_PASSWORD: wppass
volumes:
- mysql_data:/var/lib/mysql
volumes:
wordpress_data:
mysql_data:
运行:
docker-compose up -d
访问 http://<你的公网IP>:8080 即可进入 WordPress 安装页面。
✅ 总结
| 方式 | 适用场景 | 推荐度 |
|---|---|---|
docker run |
简单测试、少量容器 | ⭐⭐ |
docker-compose |
多容器协同、生产环境 | ⭐⭐⭐⭐⭐ |
✅ 最终建议:
在京东云轻量服务器上,推荐使用 Docker Compose 来管理多个容器,结构清晰、易于维护,并配合数据卷和安全组策略确保稳定运行。
如有具体应用(如 Spring Boot、Node.js、Python Web),欢迎提供,我可以给出更具体的部署方案。
CDNK博客