4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

CentOSへのJIRA7インストール手順(プロキシにnginxを使うバージョン)

Posted at

仕事でJIRA7を立てる必要があったので、ついでに手順をまとめました。
JIRA以外のアプリケーションも同じ筐体に立てる予定だったので、
リバースプロキシにnginxを使ってhttp://localhost:8080/jiraみたいな形でアクセスできるようにします。

環境

  • JIRA 7
  • CentOS 6.7
  • nginx 1.8.1
  • MySQL 5.6.28

手順

1. nginxのインストール

CentOS6でデフォルトでインストールできるnginxは古すぎるので、rpmをインストールします。

# rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
# yum -y install nginx
# nginx -v
nginx version: nginx/1.8.1

2. MySQLのインストール

MySQLのデフォルトバージョンも古すぎるので、rpmをインストールします。

# yum install http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
# yum -y install mysql mysql-devel mysql-server mysql-utilities
# mysqld --version
mysqld  Ver 5.6.28 for Linux on x86_64 (MySQL Community Server (GPL))

3. JIRA用のデータベースとユーザ作成

JIRA用のデータベースとユーザを作成します。

# mysql -u root -p
> create database jira default character set utf8;
> grant all privileges on jira.* to jira@localhost identified by 'jira';
> flush privileges;
> exit

4. JIRAのインストール

インストーラをダウンロードしてJIRAをインストールします。
インストーラは 必ずroot権限で実行 してください。
インストールが完了すると、jiraサービスを実行するためのjiraユーザが作成されます。

$ wget https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-7.0.10-jira-7.0.10-x64.bin
$ chmod a+x atlassian-jira-software-7.0.10-jira-7.0.10-x64.bin
$ sudo ./atlassian-jira-software-7.0.10-jira-7.0.10-x64.bin

5. MySQL Connectorのインストール

今回はMySQLを使うので、MySQLドライバーをインストールしてJIRAにインストールします。

$ wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.38.tar.gz
$ tar xvf mysql-connector-java-5.1.38.tar.gz
$ cd mysql-connector-java-5.1.38
$ sudo cp mysql-connector-java-5.1.38-bin.jar /opt/atlassian/jira/lib/

6. nginxのリバースプロキシの設定

サブディレクトリにJIRAを配置したいので、nginxのリバースプロキシを設定します。

/etc/nginx/conf.d/jira.conf
upstream jira {
    server 127.0.0.1:8080;
}

server {
    location ~ /jira {
        root /opt/atlassian/jira;
        if (-f $request_filename) {
            break;
        }

        proxy_read_timeout 300;
        proxy_connect_timeout 300;
        proxy_redirect     off;

        proxy_set_header   X-Forwarded-Proto $scheme;
        proxy_set_header   Host              $http_host;
        proxy_set_header   X-Real-IP         $remote_addr;
        proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
        proxy_set_header   Host $host;

        proxy_pass         http://jira;

        access_log  /var/log/nginx/jira_access.log;
        error_log   /var/log/nginx/jira_error.log;
    }
}

加えてJIRAのserver.xmlのコンテキストパスの編集も必要になります。

/opt/atlassian/jira/conf/server.xml
<?xml version="1.0" encoding="utf-8"?>
<Server port="8005" shutdown="SHUTDOWN">
    <Service name="Catalina">
        <!-- ... -->
        <Engine name="Catalina" defaultHost="localhost">
            <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
                <!-- pathを""から"/jira"に変更 -->
                <Context path="/jira" docBase="${catalina.home}/atlassian-jira" reloadable="false" useHttpOnly="true">
                    <!-- ... -->
                </Context>
            </Host>
        </Engine>
    </Service>
</Server>

最後にJIRAとnginxを再起動してください。
http://localhost/jiraでアクセスできると思います。

$ sudo service jira stop
$ sudo service jira start
$ sudo service nginx restart
4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?