1. Требования и подготовка сервера

Перед установкой убедитесь, что сервер соответствует минимальным требованиям. Для Jira Software Data Center рекомендую следующие характеристики:

  • CPU: 4 ядра (минимум 2 для тестовой среды)
  • RAM: 8 GB (минимум 4 GB)
  • Диск: 50 GB SSD (данные Jira растут быстро)
  • ОС: Ubuntu 22.04 LTS или CentOS 8+
  • Java: OpenJDK 11 или 17 (Jira поставляется с bundled JRE)
Jira Software начиная с версии 9.x требует Java 11+. Встроенный JRE в инсталляторе уже содержит нужную версию — отдельно устанавливать не обязательно, но рекомендую иметь системную JDK для работы агента.

Обновляем систему и ставим необходимые пакеты:

apt update && apt upgrade -y
apt install -y wget curl openjdk-11-jdk postgresql postgresql-contrib

Проверяем версию Java:

java -version
# Должно вернуть: openjdk version "11.0.x"

2. Установка и настройка PostgreSQL

Jira официально поддерживает PostgreSQL 13-15. Создаём базу данных и пользователя:

1
Переключаемся на пользователя postgres
sudo -u postgres psql
2
Создаём базу данных и пользователя
CREATE USER jirauser WITH PASSWORD 'StrongPass2026!';
CREATE DATABASE jiradb WITH ENCODING='UNICODE' LC_COLLATE='C' LC_CTYPE='C' TEMPLATE=template0;
GRANT ALL PRIVILEGES ON DATABASE jiradb TO jirauser;
\q
3
Настраиваем pg_hba.conf для локального подключения
# Добавляем строку в /etc/postgresql/14/main/pg_hba.conf
echo "local   jiradb   jirauser   md5" >> /etc/postgresql/14/main/pg_hba.conf
systemctl restart postgresql

3. Установка Jira Software

Скачиваем актуальный инсталлятор с сайта Atlassian. На момент написания статьи — версия 9.17.x:

cd /opt
wget https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-9.17.3-x64.bin
chmod +x atlassian-jira-software-9.17.3-x64.bin
Запускайте инсталлятор от имени root или через sudo. Jira создаст своего пользователя jira автоматически.

Запускаем установку в режиме без GUI:

./atlassian-jira-software-9.17.3-x64.bin -q -varfile response.varfile

Создайте файл response.varfile перед запуском:

# response.varfile
app.jiraHome=/var/atlassian/application-data/jira
app.install.service$Boolean=true
portChoice=default
executeLauncherAction$Boolean=false
httpPort=8080
rmiPort=8005
launch.application$Boolean=false
installationDir=/opt/atlassian/jira

После установки настраиваем подключение к PostgreSQL в файле dbconfig.xml:

# /var/atlassian/application-data/jira/dbconfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<jira-database-config>
  <name>defaultDS</name>
  <delegator-name>default</delegator-name>
  <database-type>postgres72</database-type>
  <jdbc-datasource>
    <url>jdbc:postgresql://localhost:5432/jiradb</url>
    <driver-class>org.postgresql.Driver</driver-class>
    <username>jirauser</username>
    <password>StrongPass2026!</password>
    <pool-min-size>20</pool-min-size>
    <pool-max-size>20</pool-max-size>
    <pool-max-wait>30000</pool-max-wait>
    <pool-max-idle>20</pool-max-idle>
  </jdbc-datasource>
</jira-database-config>

4. Активация через Atlassian Agent 1.3.1

Atlassian Agent — это Java-агент, который перехватывает лицензионную проверку и позволяет использовать Jira без подключения к серверам активации Atlassian. Подходит для изолированных корпоративных сред без доступа в интернет.

1
Размещаем агент
mkdir -p /opt/atlassian/agent
# Скопируйте atlassian-agent.jar в эту директорию
cp atlassian-agent.jar /opt/atlassian/agent/
chmod 644 /opt/atlassian/agent/atlassian-agent.jar
2
Подключаем агент к JVM Jira

Редактируем файл /opt/atlassian/jira/bin/setenv.sh, добавляем в конец:

export JAVA_OPTS="-javaagent:/opt/atlassian/agent/atlassian-agent.jar ${JAVA_OPTS}"
3
Генерируем лицензионный ключ

Сначала запускаем Jira и получаем Server ID из веб-интерфейса (Setup Wizard → шаг с лицензией). Затем генерируем ключ:

java -jar /opt/atlassian/agent/atlassian-agent.jar \
  -p jira \
  -m admin@company.local \
  -n "My Company" \
  -o http://jira.company.local \
  -s YOUR-SERVER-ID-HERE
4
Вводим сгенерированный ключ

Скопируйте полученный ключ и вставьте в поле лицензии в веб-интерфейсе Jira. Нажмите Next — лицензия должна приняться.

Если нужна лицензия для Confluence или Bitbucket — меняйте флаг -p: для Confluence используйте conf, для Bitbucket — stash.

5. Первый запуск и начальная настройка

Запускаем Jira:

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

# Следим за логом запуска
tail -f /opt/atlassian/jira/logs/catalina.out

Дожидаемся строки:

Server startup in XXXXX ms

Открываем браузер: http://your-server-ip:8080

Мастер установки проведёт через следующие шаги:

  1. Выбор типа установки (Set it up for me / I'll set it up myself)
  2. Подключение базы данных (выбираем My Own Database → PostgreSQL)
  3. Ввод лицензии (вводим ключ из Atlassian Agent)
  4. Создание администратора
  5. Настройка почты (можно пропустить)

6. Настройка автозапуска через systemd

# /etc/systemd/system/jira.service
[Unit]
Description=Atlassian Jira Software
After=network.target postgresql.service

[Service]
Type=forking
User=jira
Group=jira
Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
ExecStart=/opt/atlassian/jira/bin/start-jira.sh
ExecStop=/opt/atlassian/jira/bin/stop-jira.sh
PIDFile=/opt/atlassian/jira/work/catalina.pid
SuccessExitStatus=143
TimeoutStopSec=60

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable jira
systemctl start jira
systemctl status jira

7. Частые проблемы и их решение

Jira не принимает лицензию

Убедитесь что JAVA_OPTS с агентом прописан в setenv.sh и Jira была перезапущена после этого. Проверьте логи:

grep -i "agent" /opt/atlassian/jira/logs/catalina.out | head -20

В логе должна быть строка вида: ======= Atlassian Agent =======

Ошибка подключения к БД

Проверьте что PostgreSQL слушает localhost и пользователь имеет права:

psql -U jirauser -d jiradb -h localhost -W

Jira запускается очень долго

Увеличьте выделяемую heap-память в setenv.sh:

JVM_MINIMUM_MEMORY="512m"
JVM_MAXIMUM_MEMORY="2048m"