欢迎光临!
若无相欠,怎会相见

Synology 部署 Confluence 和 Jira

序言

还是之前遇到的问题, 部署 Taiga 之后, 陡然发现网上有部署 docker 版本的 confluence 和 jira 的信息。

这两个工具在工作上用了很久了, 很熟悉了, 因此, 这次就部署到自己 NAS 上吧。

本次使用的是 haxqer 大佬的 docker 映像

部署 Confluence

haxqer 大佬的 Confluence 映像使用了两个映像, 分别是 Confluence 9.2.0 和 MySQL 8.0 两个映像。

因后台命令行无法下载, 我直接在群晖的 docker 中手动下载。

docker-compose 文件为 https://github.com/haxqer/confluence/blob/master/docker-compose.yml

做了小修改, 将卷标改成了绝对路径的, 后面会转载一篇文章以示区别, 我也是个 docker 新手。

version: '3.4'
services:
  confluence:
    image: haxqer/confluence:9.2.0
    container_name: confluence-srv
    environment:
      - TZ=Asia/Shanghai
    #      - JVM_MINIMUM_MEMORY=1g
    #      - JVM_MAXIMUM_MEMORY=12g
    #      - JVM_CODE_CACHE_ARGS='-XX:InitialCodeCacheSize=1g -XX:ReservedCodeCacheSize=8g'
    depends_on:
      - mysql
    ports:
      - "8090:8090"
    volumes:
      - ./confluence_data:/var/confluence
    restart: always
    networks:
      - network-bridge

  mysql:
    image: mysql:8.0
    container_name: mysql-confluence
    environment:
      - TZ=Asia/Shanghai
      - MYSQL_DATABASE=confluence
      - MYSQL_ROOT_PASSWORD=123456
      - MYSQL_USER=confluence
      - MYSQL_PASSWORD=123123
    command: ['mysqld', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_bin', '--transaction-isolation=READ-COMMITTED', '--innodb_log_file_size=256M', '--max_allowed_packet=256M','--log_bin_trust_function_creators=1']
    volumes:
      - ./confluence_mysql:/var/lib/mysql
    restart: always
    networks:
      - network-bridge

networks:
  network-bridge:
    driver: bridge

#volumes:
#  home_data:
#    external: false
#  mysql_data:
#    external: false

先在 docker-compose.yml 同级目录创建两个目录: confluence_data 和 confluence_mysql

然后后台执行如下命令:

docker-compose up -d

执行完毕后, 访问 NAS 设备的 8090 端口, 如下就正常启动了。

然后选择 Production Installation, 获取到 server id 之后按照仓库给的方法获取授权。

之后选择单节点 (single node) 方式部署。 就一台设备, 不用选择集群方式。

然后设置数据库, 按照 docker-compose.yml 文件中的信息填写就行。

点击 Next 之后, 需要不少时间去安装。 耐心等待即可。 只要 CPU 和 网络占用还存在, 就不要手动停止, 实测会安装成功。

如此就安装完毕, 可以选择 Example Site 或 Empty Site, 我选择了 Example Site。

之后按照指引创建管理员账号之后就可以愉快玩耍了。

Confluence 的安装就到此结束。 开始写文档吧 😄

部署 Jira

和部署 Confluence 相似, 用的是 9.12.16 LTS 版本, docker-compose.yml 文件 https://github.com/haxqer/jira/blob/rm/lts/docker-compose.yml

version: '3.4'
services:
  jira:
    image: haxqer/jira:9.12.16
    container_name: jira-srv
    environment:
      - TZ=Asia/Shanghai
#      - JVM_MINIMUM_MEMORY=1g
#      - JVM_MAXIMUM_MEMORY=12g
#      - JVM_CODE_CACHE_ARGS='-XX:InitialCodeCacheSize=1g -XX:ReservedCodeCacheSize=8g'
    depends_on:
      - mysql
    ports:
      - "8080:8080"
    volumes:
      - ./jira_data:/var/jira
    restart: always
    networks:
      - network-bridge

  mysql:
    image: mysql:8.0
    container_name: mysql-jira
    environment:
      - TZ=Asia/Shanghai
      - MYSQL_DATABASE=jira
      - MYSQL_ROOT_PASSWORD=123456
      - MYSQL_USER=jira
      - MYSQL_PASSWORD=123123
    command: ['mysqld', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_bin']
#    ports:
#      - "13306:3306"
    volumes:
      - ./jira_mysql:/var/lib/mysql
    restart: always
    networks:
      - network-bridge

networks:
  network-bridge:
    driver: bridge

#volumes:
#  home_data:
#    external: false
#  mysql_data:
#    external: false

同上, 我还是用了相对路径, 没有使用卷标。 接下来正常安装就行, 如果出现如下错误:

说明挂载卷的权限不对, 因为是在 NAS 中手动创建的, 所有者和 docker 中要求的不一致, 导致安装失败。 经过查看 jira user 在 docker 中是 999:999, 那么可以直接在 docker 外面修改权限。

root@DS423plus:/volume1/docker/Jira# chown 999:999 jira_data/

之后就正常了。

安装的时候选择第二个, 第一个是评估版

数据库填写 docker-compose.yml 文件里面定义的。 

点击 Test Connection 之后测试数据库正常连接的话在点击 Next。 到这里就耐心等待吧, 可能是我的 NAS CPU 不太行, 安装了很久。

到这一步, 就安装成功了。 下一步就按照指引生成授权。

docker exec jira-srv java -jar /var/agent/atlassian-agent.jar \
    -d \
    -p jira \
    -m [email protected] \
    -n [email protected] \
    -o your-org \
    -s you-server-id-xxxx

然后到了设置邮件通知的步骤, 但是这一步可以省略了, 因为在我这里, 直接无法正常工作。

配置是正常的, 点击 Test Connection 就会到 Administrator Access 页面, 点击 Confirm 会回到 Setup Application 步骤。 

所以直接选择 Later 吧。

到此就安装完毕了, 这个 Java 项目不适合个人玩, 安装实在是太慢了。 占用的资源比较大, 先体验一下, 如果不行, 就换掉。

结语

经过几天的奋战, 终于搞定了, 还是有一些小瑕疵。 比如 jira 的邮件通知就没搞定, 我在 github issues 里面也看到有人说邮件通知没搞定。 先这样吧。

如有错误, 敬请指出, 感谢指正!  — 2025-01-07  21:57:20

赞(0) 打赏
转载请注明:飘零博客 » Synology 部署 Confluence 和 Jira
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

欢迎光临