使用 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_USER
和 ATL_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 反向代理等。