ubuntu

ubuntu下docker如何进行容器编排

小樊
42
2025-10-03 22:45:43
栏目: 智能运维

Ubuntu下Docker容器编排的常用方法及实践

一、Docker Compose:轻量级多容器编排工具(推荐)

Docker Compose是Ubuntu下最常用的容器编排工具之一,通过docker-compose.yml文件定义多容器应用的服务、网络、卷等配置,实现一键启动、停止和管理。

1. 安装Docker与Docker Compose

2. 编写docker-compose.yml文件

在项目目录(如~/myapp)中创建docker-compose.yml,定义服务、环境变量、网络、卷等配置。示例如下:

version: "3.8"  # 指定Compose文件格式版本
services:
  web:  # 服务名称(自定义)
    image: nginx:latest  # 使用官方Nginx镜像
    ports:
      - "80:80"  # 将宿主机80端口映射到容器80端口
    depends_on:
      - db  # 定义服务依赖(web启动前需先启动db)
  db:  # 数据库服务
    image: postgres:15  # 使用PostgreSQL 15镜像
    environment:
      POSTGRES_PASSWORD: mysecretpassword  # 设置环境变量(数据库密码)
    volumes:
      - db-data:/var/lib/postgresql/data  # 持久化数据(挂载卷)
volumes:
  db-data:  # 自定义卷名称(用于数据持久化)

3. 常用命令管理容器

4. 关键功能扩展

二、Docker Swarm:原生集群编排(适用于生产环境)

若需要跨主机部署高可用集群,可使用Docker Swarm(Docker原生集群管理工具),支持服务扩缩容、负载均衡、故障转移等功能。

1. 初始化Swarm集群

管理节点(如Ubuntu服务器)上运行以下命令,初始化Swarm:

docker swarm init --advertise-addr <MANAGER-IP>  # 替换为管理节点的实际IP

输出结果会显示加入集群的命令(包含Token),用于将工作节点加入集群。

2. 加入工作节点

工作节点(其他Ubuntu服务器)上运行管理节点输出的命令,加入Swarm集群:

docker swarm join --token <SWARM-TOKEN> <MANAGER-IP>:2377

3. 部署服务到Swarm集群

使用docker service create命令部署服务,示例如下:

docker service create --name web --replicas 3 -p 80:80 nginx:latest

4. 管理Swarm服务

三、选择建议

0
看了该问题的人还看了