在Docker中部署confluence和jira

Terwer...大约 3 分钟实用技巧经验分享dockerconfluencejira

部署confluence

https://hub.docker.com/r/atlassian/confluenceopen in new window

数据库配置

创建数据库

create database confluence default character set utf8mb4 collate utf8mb4_bin;

下载并配置数据库驱动

配置 my.cnf

PS:除了共用jira的部分配置,还需要下面的配置

# 指定设置为 utf8mb4 的默认字符
# character-set-server=utf8mb4
# collation-server=utf8mb4_bin

# 默认存储引擎设置为 InnoDB
# default-storage-engine=INNODB
transaction-isolation=READ-COMMITTED

max_allowed_packet=256M
# innodb_log_file_size=2GB

# 检查二进制记录格式是否被配置为使用"row-based"的二进制记录,以及
# 数据库用户是否可以创建和更改存储的功能
binlog_format=row
log-bin-trust-function-creators=1

其他没什么特别的。直接安装就好了。

部署jira

https://hub.docker.com/r/atlassian/jira-softwareopen in new window

基本运行环境

Dockerfile

# 依赖的镜像
FROM atlassian/jira-software:8.22.3-ubuntu-jdk11

#镜像创建者的信息
LABEL maintainer="terwer youweics@163.com"

# 设置编码
ENV LANG C.UTF-8

# 设置时区
# ENV TZ Asia/Shanghai
ENV TZ CST-8

# 容器入口
COPY ./entrypoint.sh /entrypoint.sh
# 注意:这个CMD会覆盖原来image的命令
# CMD ["/entrypoint.py"]
# 因此,需要再次执行entrypoint.py
CMD ["bash", "/entrypoint.sh"]

启动入口

注意:添加MySQL驱动

#!/bin/sh

# 添加MySQL驱动
cp /drivers/mysql-connector-java-5.1.49.jar /opt/atlassian/jira/lib
# 设置权限,没必要,jar包默认root权限即可
# chown -R jira:jira /opt/atlassian/jira/lib/mysql-connector-java-5.1.49.jar
echo "copy mysql driver finished"

# start jira
/entrypoint.py

docker-compose.yml

# https://github.com/codeclou/docker-atlassian-jira-data-center/blob/master/versions/8.20.5/docker-compose-one-node.yml
# 查看最新版本
# https://stackoverflow.com/questions/28320134/how-can-i-list-all-tags-for-a-docker-image-on-a-remote-registry
# ./dockertags.sh atlassian/jira-software 8.22.3
# 运行
# docker-compose up --build

version: "3.2"
services:
  portable-jira:
    image: terwer/jira:8.22.3-ubuntu-jdk11
    container_name: portable-jira
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "8080:8080"
    # Allow docker to connect to localhost
    network_mode: "host"
    environment:
      # 最好使用此设定时区,其它镜像也可以使用,也可以用"TZ=Asia/Shanghai"
      - "TZ=CST-8"
      # # Memory / Heap Size
      # - JVM_MINIMUM_MEMORY=512M
      # - JVM_MAXIMUM_MEMORY=2048M
    # volumes:
    #   - type: bind
    #     source: ./jira-home
    #     target: /var/atlassian/application-data/jira
    volumes:
      - ./jira-home:/var/atlassian/application-data/jira
      - ./drivers:/drivers
    stdin_open: true
    tty: true
    restart: "no"

数据库配置

参考

https://confluence.atlassian.com/adminjiraserver/connecting-jira-applications-to-mysql-5-7-966063305.htmlopen in new window

创建数据库

create database jira default character set utf8mb4 collate utf8mb4_bin;

下载并配置数据库驱动

配置 my.cnf

[mysqld]
# ...

# jira
default-storage-engine=INNODB
character_set_server=utf8mb4
innodb_default_row_format=DYNAMIC
innodb_large_prefix=ON
innodb_file_format=Barracuda
innodb_log_file_size=2G
// remove this if it exists
sql_mode=NO_AUTO_VALUE_ON_ZERO

重启MySQL。

注意

注意:docker版本的MySQL修改之后需要重新build。

docker-compose up --build

重启Jira。

注意:为了重新构建时的权限问题,最好把jira-home加入dockerignore

image-20220602143325463
image-20220602143325463

运行

运行 docker-compose up --build

然后浏览器打开

http://localhost:8080

设置方式选择自己配置,语言选择中文,数据库选择MySQL57

image-20220602143928939
image-20220602143928939

后面会出现许可证,我们可以先试用。如果你资金允许可以购买正版。

到这里Jira的安装就结束了,尽情使用吧!

数据迁移

选择系统->导入导出,先备份成zip,然后导入即可。

注意:备份的时候文件名不需要输入 .zip ,但是还原的时候需要输入 .zip 。

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.14.9