10 мая 2012 г. Debian DotDeb Jira Linux MySQL

Debian. Установка и настройка Jira + GreenHopper

Сегодня расскажу как установить standalone-версию Jira (то есть ту, которая на сайте Jira значится как "Download" версия) на ваш сервер. Выбран Debian из-за того что на FreeBSD сложнее завести самую свежую Java, которая так нужна Jira. Другие дистрибутивы я не рассматривал, просто потому что мне с Debian проще.

Также в качестве СУБД для Jira будет использоваться MySQL. Это обусловлено тем, что потом можно хакать данные жиры, например переименовывать пользователей и т.д. через процедуры, о которых возможно расскажу в другой статье.

В статье рассматривается Jira 5.0.4.

Установка

Установка будет происходить на минимальной сборке свежеустановленного Debian, поэтому буду устанавливать нужный софт типа nano и sudo. А также создадим в домашней директории каталог "Downloads", туда будем класть всякие загрузки:

apt-get install sudo nano
mkdir ~/Downloads

Теперь добавим репозиторий DotDeb, так как там есть более свежие пакеты:

sudo nano /etc/apt/sources.list
>> deb http://packages.dotdeb.org squeeze all
>> deb-src http://packages.dotdeb.org squeeze all

Теперь скачаем ключ для DotDeb и применим его:

cd ~/Downloads
wget http://www.dotdeb.org/dotdeb.gpg
cat dotdeb.gpg | sudo apt-key add -

Установим MySQL-сервер версии 5.5 и Nginx:

sudo apt-get update
sudo apt-get install mysql-server-5.5 nginx

Выбирите нужную версию Jira на этой странице и скачайте бинарный файл в каталог "~/Downloads".
Так как у меня 32-битная платформа на Linux, я качаю нужный мне бинарник так:

cd ~/Downloads
wget http://wpc.29c4.edgecastcdn.net/8029C4/downloads/software/jira/downloads/atlassian-jira-5.0.4-x32.bin
sudo chmod +x atlassian-jira-5.0.4-x32.bin

Создадим каталоги для Jira:

mkdir -p /opt/atlassian/jira
mkdir -p /var/atlassian/application-data/jira

Теперь запустим бинарник и приступим к установки самой Jira:

./atlassian-jira-5.0.4-x32.bin

>>> Unpacking JRE ...
>>> Starting Installer ...
>>> You do not have administrator rights to this machine and as such, some installation options will not be available. Are you sure you want to continue?
>>> Yes [y, Enter], No [n]
y

>>> This will install JIRA 5.0.4 on your computer.
>>> OK [o, Enter], Cancel [c]
o

>>> Choose the appropriate installation or upgrade option.
>>> Please choose one of the following:
>>> Express Install (use default settings) [1], Custom Install (recommended for advanced users) [2], Upgrade an existing JIRA installation [3, Enter]
2

>>> Where should JIRA 5.0.4 be installed?
>>> [/home/adw0rd/atlassian/jira]
/opt/atlassian/jira

>>> Default location for JIRA data
>>> [/home/adw0rd/atlassian/application-data/jira]
/var/atlassian/application-data/jira

>>> Configure which ports JIRA will use.
>>> JIRA requires two TCP ports that are not being used by any other
>>> applications on this machine. The HTTP port is where you will access JIRA
>>> through your browser. The Control port is used to Startup and Shutdown JIRA.
>>> Use default ports (HTTP: 8080, Control: 8005) - Recommended [1, Enter], Set custom value for HTTP and Control ports [2]
1

>>> Extracting files ...
...

>>> Please wait a few moments while JIRA starts up.
>>> Launching JIRA ...
>>> Installation of JIRA 5.0.4 is complete
>>> Your installation of JIRA 5.0.4 is now ready and can be accessed via your browser.
>>> JIRA 5.0.4 can be accessed at http://localhost:8080
>>> Finishing installation ...

После установки, нам необходим init-скрипт, я создавал небольшой срипт, можете им воспользоваться:

sudo wget -O /etc/init.d/jira http://adw0rd.ru/files/jira
sudo chmod +x /etc/init.d/jira

Настройка

Теперь создадим БД и настроим права доступа для Jira:

mysql -uroot -p
mysql> CREATE DATABASE `jira` CHARSET utf8 COLLATE utf8_general_ci;
mysql> SELECT PASSWORD('example');
+-------------------------------------------+
| password('example')                       |
+-------------------------------------------+
| *57237BB49761F29AB9724BA084E811D70C12393D |
+-------------------------------------------+
1 row in set (0.00 sec)
mysql> GRANT USAGE ON *.* TO 'jira'@'localhost' IDENTIFIED BY PASSWORD '*57237BB49761F29AB9724BA084E811D70C12393D';
mysql> GRANT ALL PRIVILEGES ON `jira`.* TO 'jira'@'localhost';
mysql> SHOW GRANTS FOR jira@localhost;
+-------------------------------------------------------------------------------------------------------------+
| Grants for jira@localhost                                                                                   |
+-------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'jira'@'localhost' IDENTIFIED BY PASSWORD '*57237BB49761F29AB9724BA084E811D70C12393D' |
| GRANT ALL PRIVILEGES ON `jira`.* TO 'jira'@'localhost'                                                      |
+-------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)

Отредактируйте "nginx.conf":

sudo nano /etc/nginx/nginx.conf

К виду:

http {
    ...
    upstream jira {
        server 127.0.0.1:8080;
    }
    ...
    server {
        listen 80;
        server_name example.org;
        location / {
            proxy_pass http://jira;
        }
    }
    ...
}

Далее, отредактируем конфиг Jira:

sudo nano /opt/atlassian/jira/conf/server.xml

Найдите там "Service/Connector" и добавьте туда "proxyName" и "proxyPort":

...
    <Service name="Catalina">
        ...
        <Connector port="8080"
                   maxThreads="150"
                   minSpareThreads="25"
                   maxSpareThreads="75"
                   connectionTimeout="20000"
                   proxyName="example.org"
                   proxyPort="80"
                   enableLookups="false"
                   maxHttpHeaderSize="8192"
                   protocol="HTTP/1.1"
                   useBodyEncodingForURI="true"
                   redirectPort="8443"
                   acceptCount="100"
                   disableUploadTimeout="true"/>
        ...
    ...
...

Перезагружаем Jira для того чтобы применить новый конфиг:

sudo /etc/init.d/jira restart

Теперь пробуем открыть "http://example.org/". Вам предложат настроить Jira, укажите тип хранилища "MySQL" и верные реквизиты доступа, после чего вам предложат настроить учетную запись администратора и т.д.

Установка GreenHopper

Для этого надо просто войти в UPM ("http://example.org/plugins/servlet/upm#install") и вбить в поисковую строку "GreenHopper", таким же образом можете установить любые другие плагины доступные в репозитории Jira.

Ещё пару слов

При покупке, лицензионный ключ для Jira надо ввести на странице "http://example.org/secure/admin/ViewLicense!default.jspa", а для GreenHopper в UPM.

Если вы неверно указали "Base URL" (в нашем примере он "http://example.org"), то на странице настроек "http://example.org/secure/admin/ViewApplicationProperties.jspa" можете поменять его.

Комментарии

Как Java ставить не рассказал.

Потомучто это не надо делать при установке Jira на Debian

На debina/ubuntu же обычно какая-то недоява, которую приходится сносить и ставить sun'овскую. Уже не так?

Jira сама тащит jre:


$ /opt/atlassian/jira/jre/bin/java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)

Еще бы, пару практических применений Jara для примера не помешает :)

В каком плане "примеры"? Как работать с Jira?

Java на Debian ставится вот так http://blog.geekliketodd.com/archives/876.
Добавляете репо, апдейт репо и ставите яву, у них терки какие-то я Саном, поэтому яву нужно ставить через зад.

сорь, за предыдущий коммент, ляп. В общем при переходе на http://example.org/, перекидывает на http://www.iana.org/domains/example/.
как с этим бороться?

Привет, домен "example.org" используется только для примера, вам надо вместо него указать свой:

Согласно RFC 2606 в качестве доменных имен для примеров в документации допустимо использование доменов и поддоменов: .example, example.com, example.net и example.org

Будь добр, выложи конфиг ngnix'а, я к сожалению слабо соображаю

Страницу не обнаруживает, jira установилась как надо, ошибок не было. Думаю проблема в nginx. Очень буду благодарен за помощь

Вот мой конфиг http://adw0rd.com/files/jira_nginx.tgz

jira установилась как надо, ошибок не было

Укажи порт в браузере и войди в jira, а только потом можешь nginx настраивать.
Например если твоё имя сайта example.org, а порт при установке jira указал 8080, то запусти jira и зайди в браузере на страницу "http://example.org:8080/"

все, отлично, только вот что делать с license key, мы ведь триал ставили?

справился, убери пожалуйста)) огромное спасибо за статью

Спасибо за статью.
Как быть в случае краха системы, когда нужно будет перетереть /. Обидно все записи потерять.
Конечно, наверное было бы лучше поднять на хостинге и работать удаленно. Как Вы работаете?

Как быть в случае краха системы, когда нужно будет перетереть /. Обидно все записи потерять.

Бекапы должны спасти

 Конечно, наверное было бы лучше поднять на хостинге и работать удаленно.

Ну Jira работает на Java, поэтому лучше под неё дедик брать, я так и делаю. И на debian, чтобы было просто поставить Java...
Не под всеми VDS будет корректно работать, так что если всетаки хотите VDS, то берите топовый тариф и лучше на KVM.

когда-то впервые ставил по этому ману, сейчас вот понадобилось по новой и обнаружил что в комментах линк на установку java битый. Вот так устанавливал я - http://blog.nonick.name/sreda-razrabotki/debian/ustanovka-debian-chast-vtoraya-graficheskoe-okruzhenie-rabochego-stola-i-sreda-razrabotki/ - есть пунктик java

были проблемы при инсталяции на vds - смотрите минимальные требования (моя трабла 512 оперативы, поднял до 1Г)

(шеф, nonick - это не спамеры, я существую-:-) )

Оставьте свой комментарий

Markdown