Jira & Confluence & Ubuntu 20.04 & NginX (SWAG)

Ставлю на чистую Ubuntu 20.04

Ниже вводные установки и ссылки на загрузку на момент установки.

MySQL root pass nNMnskCVy7MPAydiQTxjXlGdvXtvQU
Jira Pass gbEL7mf2GiPuBo2wK74G6KmB7tkpNY
atlassian-jira-software-8.20.0-x64.bin
atlassian-agent-v1.3.1.zip

MySQL
timedatectl set-timezone Europe/Moscow
apt-get install default-jdk -y
apt-get install mysql-server -y && systemctl enable mysql
mysql_secure_installation - в процессе вводим новый пароль рута и записываем его
mysql -uroot -pnNMnskCVy7MPAydiQTxjXlGdvXtvQU
CREATE DATABASE jira DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_bin;
CREATE USER 'jira'@'localhost' IDENTIFIED BY 'gbEL7mf2GiPuBo2wK74G6KmB7tkpNY';
GRANT ALL PRIVILEGES ON jira.* TO 'jira'@'localhost';
quit

Нам нужно открыть конфигурационный файл для MySQL. Путь до него можно посмотреть командой:

mysql --help | grep "Default options" -A 1

Редактируем и в раздел [mysqld] добавляем:

[mysqld]
...
default-storage-engine=INNODB
innodb_default_row_format=DYNAMIC
innodb_log_file_size=2G
character-set-server=utf8mb4
collation-server=utf8mb4_bin
max_allowed_packet=256M
transaction-isolation=READ-COMMITTED
binlog_format=row
log-bin-trust-function-creators = 1

Перезапускаем mysql:

systemctl restart mysql
Jira
wget https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-8.20.0-x64.bin
wget https://product-downloads.atlassian.com/software/confluence/downloads/atlassian-confluence-7.13.1-x64.bin
wget https://gitee.com/pengzhile/atlassian-agent/attach_files/832833/download/atlassian-agent-v1.3.1.zip
unzip atlassian-agent-v1.3.1.zip

Определяем версию установленного SQL и переходим на сайт https://downloads.mysql.com/archives/c-j/ для закачки драйвера JDBC

dpkg -l | grep sql

У меня версия 8.0.26
Проверяем версию Убунты. У меня Ubuntu 20.04.3 LTS. Скачиваем коннектор

cat /etc/issue
wget https://downloads.mysql.com/archives/get/p/3/file/mysql-connector-java_8.0.26-1ubuntu20.04_all.deb

Распаковываем и кладем файл mysql-connector-java-8.0.26.jar в каталог /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/

cp mysql-connector-java-*.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/
chmod +x atlassian-*.bin
./atlassian-jira-software-8.20.0-x64.bin
./atlassian-confluence-7.13.1-x64.bin

Лекарство

cp ./atlassian-agent-v1.3.1/atlassian-agent.jar /opt/atlassian/jira/bin/
vi /opt/atlassian/jira/bin/start-jira.sh

под строку

export START_JIRA_JAVA_OPTS="-Datlassian.plugins.startup.options='${@}'"

добавляем

export JAVA_OPTS="-javaagent:/opt/atlassian/jira/bin/atlassian-agent.jar ${JAVA_OPTS}"

Редактируем параметры сервера

vi /opt/atlassian/jira/conf/server.xml

меняем в соответствии c, но не забываем сменить домен:

Connector port="8081" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" acceptCount="100" disableUploadTimeout="true"
proxyName="jira.mydomain.ru" proxyPort="443" scheme="https" secure="true"

Далее

/opt/atlassian/jira/bin/stop-jira.sh
/opt/atlassian/jira/bin/start-jira.sh

Идём по адресу http://jira.mydomain.ru:8080
Установка в браузере интуитивна, получаем Server ID и далее генерация ключа: не забываем изменить почту, домен и ключ, полученный при установке:

/opt/atlassian/jira/jre/bin/java -jar /opt/atlassian/jira/bin/atlassian-agent.jar -m mymail@gmail.com -o jira.mydomain.ru -p jira -s BRW5-MVYN-S69B-4QRA
Confluence

по аналогии:

cp ./atlassian-agent-v1.3.1/atlassian-agent.jar /opt/atlassian/confluence/bin/
cp mysql-connector-java-*.jar /opt/atlassian/confluence/confluence/WEB-INF/lib/
vi /opt/atlassian/confluence/bin/start-confluence.sh

под строку

export START_CONFLUENCE_JAVA_OPTS="-Datlassian.plugins.startup.options='${@}'"

добавляем

export JAVA_OPTS="-javaagent:/opt/atlassian/confluence/bin/atlassian-agent.jar ${JAVA_OPTS}"

Далее

mysql -uroot -pnNMnskCVy7MPAydiQTxjXlGdvXtvQU
CREATE DATABASE conf CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER 'conf'@'localhost' IDENTIFIED BY 'gbEL7mf2GiPuBo2wK74G6KmB7tkpNY';
GRANT ALL PRIVILEGES ON conf.* TO 'conf'@'localhost';
quit
/opt/atlassian/confluence/bin/stop-confluence.sh
/opt/atlassian/confluence/bin/start-confluence.sh

ВАЖНО!!!
Установку проводим по IP-адресу
Не через прокси, а-то у меня ошибки сыпались.
Не подключаем Конфлюэнс к Жире сразу. Создаем Админа в Конфе, а затем идем по ссылке
https://jira-domain/plugins/servlet/applinks/listApplicationLinks и добавляем ссылку на Конфу https://confluence-domain/
После этого они свяжутся

Генерация ключа, не забываем менять почту, домен и серийник.

/opt/atlassian/confluence/jre/bin/java -jar /opt/atlassian/confluence/bin/atlassian-agent.jar -m mymail@gmail.com -o wiki.mydomain.ru -p conf -s BKKD-BHQR-JQSS-HCUH

Настройки подключения к БД:

MySQL
By connection string
jdbc:mysql://localhost:3306/conf
conf
gbEL7mf2GiPuBo2wK74G6KmB7tkpNY

Редактируем настройки Конфы, не забывая сменить домен

vi /opt/atlassian/confluence/conf/server.xml
Connector port="8081" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" acceptCount="100" disableUploadTimeout="true"
proxyName="wiki.mydomain.ru" proxyPort="443" scheme="https" secure="true"
NginX (SWAG)

Привожу готовую работающую конфигурацию как есть. Для проксирования использую установленный и настроенный контейнер LinuxSwag

Жира

$ cat swag_data/config/nginx/proxy-confs/_jira.subdomain.conf 
server {
            listen                    443 ssl;
            server_name               jira.mydomain.ru;
            keepalive_timeout         70;

            location / {
                proxy_pass http://192.168.88.116:8080/;
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
                client_max_body_size 20M;
           }

}

Конфа

$ cat swag_data/config/nginx/proxy-confs/_wiki.subdomain.conf 
server {
            listen                    443 ssl;
            server_name               wiki.mydomain.ru;
            keepalive_timeout         70;

            location / {
                proxy_pass http://192.168.88.116:8090/;
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
                client_max_body_size 20M;
           }
	}

IT-Admins. 2020