在京东云轻量服务器上如何部署多个Docker容器?

在京东云轻量服务器上部署多个 Docker 容器是一个常见需求,可以通过以下步骤完成。本文将指导你从环境准备到使用 DockerDocker Compose 部署多个容器的完整流程。


✅ 一、准备工作

1. 登录京东云控制台

  • 进入 京东云官网
  • 登录后进入「轻量应用服务器」管理页面。
  • 创建或选择一台轻量服务器(建议系统为 Ubuntu 20.04/22.04 或 CentOS 7/8)。

2. 连接服务器

通过 SSH 连接到你的轻量服务器:

ssh root@<你的服务器公网IP>

✅ 二、安装 Docker

1. 更新系统包

# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y

# CentOS/RHEL
sudo yum update -y

2. 安装 Docker

Ubuntu 示例:

# 安装依赖
sudo apt install -y ca-certificates curl gnupg lsb-release

# 添加 Docker 官方 GPG 密钥
sudo mkdir -p /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 
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 安装 Docker 引擎
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

CentOS 示例:

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

3. 启动并设置开机自启

sudo systemctl start docker
sudo systemctl enable docker

4. (可选)添加当前用户到 docker 组

避免每次使用 sudo

sudo usermod -aG docker $USER
# 重新登录或执行:
newgrp docker

✅ 三、部署多个 Docker 容器

推荐使用 Docker Compose 来管理多个容器。

1. 安装 Docker Compose(如果未自动安装)

上面已安装 docker-compose-plugin,可直接使用:

docker compose version

注意:新版使用 docker compose(无连字符),旧版是 docker-compose

2. 创建项目目录

mkdir ~/myapp && cd ~/myapp

3. 编写 docker-compose.yml 文件

示例:部署一个 Nginx + MySQL + Redis 的简单应用

# docker-compose.yml
version: '3.8'

services:
  nginx:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
    depends_on:
      - app

  app:
    image: your-web-app:latest
    environment:
      - DB_HOST=mysql
      - REDIS_URL=redis://redis:6379
    depends_on:
      - mysql
      - redis

  mysql:
    image: mysql:8.0
    environment:
      MYSQL_ROOT_PASSWORD: mysecretpassword
      MYSQL_DATABASE: mydb
    ports:
      - "3306:3306"
    volumes:
      - mysql_data:/var/lib/mysql

  redis:
    image: redis:alpine
    ports:
      - "6379:6379"
    volumes:
      - redis_data:/data

volumes:
  mysql_data:
  redis_data:

注:你可以根据实际需求替换 app 服务为你自己的镜像或构建配置。

4. 启动所有容器

docker compose up -d

-d 表示后台运行。


✅ 四、常用命令

命令 说明
docker compose ps 查看运行中的容器
docker compose logs 查看日志
docker compose down 停止并删除容器
docker compose restart 重启服务
docker ps 查看所有容器(原生命令)

✅ 五、开放防火墙端口(京东云安全组)

在京东云控制台中,确保为你的轻量服务器配置了正确的安全组规则,放行所需端口:

  • HTTP: 80
  • HTTPS: 443
  • MySQL: 3306(如需网络访问,注意安全)
  • Redis: 6379(建议仅内网访问)
  • 自定义应用端口

👉 操作路径:

京东云控制台 → 轻量应用服务器 → 找到实例 → 安全组 → 添加入方向规则


✅ 六、进阶建议

  1. 使用 .env 文件管理环境变量

    # .env
    MYSQL_ROOT_PASSWORD=strongpassword
    DOMAIN=example.com
  2. 使用 build 构建本地镜像

    app:
      build: ./app
      ports:
        - "5000:5000"
  3. 反向X_X(Nginx)统一入口
    可用 Nginx 或 Traefik 实现多服务域名路由。

  4. 数据持久化
    使用卷(volume)或绑定挂载确保数据库等数据不丢失。


✅ 总结

在京东云轻量服务器上部署多个 Docker 容器的关键步骤:

  1. 安装 Docker 和 Docker Compose
  2. 编写 docker-compose.yml 定义多个服务
  3. 使用 docker compose up -d 启动
  4. 配置安全组放行端口
  5. 监控和维护容器状态

如果你有具体的应用场景(如部署 WordPress + MySQL,或多个微服务),欢迎提供,我可以给出更具体的 docker-compose.yml 示例。

未经允许不得转载:云计算 » 在京东云轻量服务器上如何部署多个Docker容器?