使用Docker Compose搭建 Confluence的教程

  • Post category:http

使用 Docker-Compose 是一种简单快捷的方式来快速构建 Confluence 服务。下面是使用 Docker-Compose 搭建 Confluence 的教程。

步骤1: 准备环境

在开始之前,确保您已经安装了以下工具:

  • Docker(版本18.06或更高版本)
  • Docker-Compose(版本1.25或更高版本)

步骤2:创建 Docker-Compose 文件

使用以下命令创建一个名为 docker-compose.yml 的文件:

version: '3.3'
services:
  confluence:
    container_name: confluence
    image: atlassian/confluence-server
    ports:
      - "8090:8090"
      - "8091:8091"
    environment:
      - JVM_MINIMUM_MEMORY=2048m
      - JVM_MAXIMUM_MEMORY=4096m
      - JVM_SUPPORT_RECOMMENDED_ARGS=-Datlassian.plugins.enable.wait=300

此配置文件将创建一个名为“confluence”的 Docker 容器,它将使用 Atlassian 的 Confluence 服务器镜像。此容器将在 8090 和 8091 端口上公开 Confluence 服务,以便通过浏览器访问。

步骤3:运行 Docker-Compose

使用以下命令在 Docker 容器中运行 Confluence 服务:

docker-compose up -d

该命令将启动 Docker 容器并创建 Confluence 服务。-d 选项将容器作为后台进程运行。

确保访问 http://localhost:8090 来访问 Confluence 页面,您应该能够看到 Confluence 的欢迎页面。

示例1:使用外部数据库进行配置

默认情况下,Confluence 服务器正在运行嵌入式 HSQLDB 数据库。您可以将 Confluence 配置为使用外部数据库。请按照以下步骤操作:

步骤1: 创建数据库

使用以下命令创建一个名为 confluence-db 的 PostgreSQL 数据库:

docker run -d \
    --name=confluence-db \
    -e POSTGRES_PASSWORD=mysecretpassword \
    -e POSTGRES_USER=confluence \
    -e POSTGRES_DB=confluence \
    postgres:12-alpine

此命令将创建一个名为 confluence-db 的 PostgreSQL 容器,并设置用户名、密码和数据库名称。

步骤2:更新 Docker-Compose 文件

将以下环境变量添加到 Docker-Compose 文件中,以连接到外部数据库:

version: '3.3'
services:
  confluence:
    container_name: confluence
    image: atlassian/confluence-server
    ports:
      - "8090:8090"
      - "8091:8091"
    environment:
      - JVM_MINIMUM_MEMORY=2048m
      - JVM_MAXIMUM_MEMORY=4096m
      - JVM_SUPPORT_RECOMMENDED_ARGS=-Datlassian.plugins.enable.wait=300
      - ATL_JDBC_URL=jdbc:postgresql://confluence-db:5432/confluence
      - ATL_JDBC_USER=confluence
      - ATL_JDBC_PASSWORD=mysecretpassword

设置 ATL_JDBC_URL 环境变量以连接到 PostgreSQL 数据库。确保更新 ATL_JDBC_USERATL_JDBC_PASSWORD 环境变量来匹配您实际使用的数据库用户凭据。

示例2:配置 Confluence Data Center

Confluence Data Center 提供了更高的可用性和性能,允许您在多个节点的集群中运行 Confluence 服务器。请按照以下步骤操作:

步骤1:更新 Docker-Compose 文件

将以下参数添加到 Docker-Compose 文件中,以启用 Confluence Data Center:

version: '3.3'
services:
  confluence:
    container_name: confluence
    image: atlassian/confluence-data-center
    ports:
      - "8090:8090"
      - "8091:8091"
    environment:
      - JVM_MINIMUM_MEMORY=2048m
      - JVM_MAXIMUM_MEMORY=4096m
      - JVM_SUPPORT_RECOMMENDED_ARGS=-Datlassian.plugins.enable.wait=300
      - ATL_JDBC_URL=jdbc:postgresql://confluence-db:5432/confluence
      - ATL_JDBC_USER=confluence
      - ATL_JDBC_PASSWORD=mysecretpassword
    volumes:
      - confluence-server-data:/var/atlassian/application-data/confluence
    depends_on:
      - confluence-db

  confluence-shared:
    container_name: confluence-shared
    image: atlassian/confluence-data-center-shared-home
    volumes:
      - confluence-shared-home:/var/atlassian/application-data/confluence/shared-home

volumes:
  confluence-server-data:
  confluence-shared-home:

使用 atlassian/confluence-data-center 镜像替换默认的 Confluence 服务器镜像,并将容器名称更改为“confluence”。

添加共享节点,用于存储 Confluence 的共享数据。使用 atlassian/confluence-data-center-shared-home 镜像创建共享节点。

使用 depends_on 列表定义 confluence 服务容器依赖于 confluence-db 服务容器。

步骤2:启动 Confluence Data Center 集群

使用以下命令启动 Confluence Data Center 集群:

docker-compose up -d

此命令将启动 Confluence Data Center 集群。使用 docker logs confluence 命令查看 Confluence 服务的日志,检查是否出现任何错误。

结论

使用 Docker-Compose,可以轻松快捷地搭建 Confluence 服务。可以添加更多自定义配置来满足其他需求,如 Nginx 反向代理等。