LoginSignup
4
7

More than 5 years have passed since last update.

Docker for Macを使ってMacに自分用のJIRAを建ててみる

Last updated at Posted at 2017-01-03

2017年あけましておめでとうございます。何かしら新しいことをやろうかと Atlassian JIRA を Docker を使って Mac上に立ち上げてみたのでその備忘録を残しておきます。

環境

ホスト

  • macOS Sierra 10.12.2
  • Docker for Mac 1.13.0-rc4-beta34.1 (14853)

ゲスト (JIRA)

  • Debian GNU/Linux 8 (jessie)
  • OpenJDK 1.8.0_102
  • Atlassina JIRA 7.2.7

ゲスト (PostgreSQL)

  • Debian GNU/Linux 8 (jessie)
  • PostgreSQL 9.4.10

なぜDocker for Macを使った?

VPSに置こうと思ったのでとりあえず手元で構築手順をまとめるのが目的です。
まだVPSには置いてないのでその体で読んでください。

構築手順

Docker for Macをインストール

公式サイトからインストーラーをダウンロードしてインストールするか、Homebrew cask使いの人は

brew cask install docker

でインストールします。

インストール後 /Applications/Docker.app を起動します。

Dockerイメージの選択

JIRAのDockerイメージはいろいろ1 あるんですが、今回は jira docker で最初に出てくる cptactionhank/atlassian-jira をそのまま使います。

データの保存先もいろんなSQLサーバーが使えますが今回は PostgreSQL を選びました。これもDockerコンテナで立ち上げます。
PostgreSQLにした理由は自分専用なので軽い方がいいな、と思ったくらいで特にありません。

JIRA用のPostgreSQLをDockerで立ち上げる

JIRAのコンテナと連携するためのDBを用意します。今回はJIRAコンテナ専用のPostgreSQLを立ち上げます。

この執筆時はJIRAはPostgresql 9.4までしか今のところサポートしてないとのことなので、最新版ではなく9.4を使います。
postgres:latest イメージを使ってJIRAをセットアップするとわかるんですが、管理者ユーザー作成の画面で作成に失敗します。

コンソールから

docker run --name postgres-jira -e POSTGRES_PASSWORD=password -e POSTGRES_USER=jira -e POSTGRES_DB=jira --detach postgres:9.4

で立ち上げます。

docker start postgres-jira で起動できるように --name 引数で名前をつけておきます。
run時の環境変数にパスワード、ユーザー名、DB名を渡しています。

パスワードは適当につけましょう。ユーザー名 (POSTGRES_USER) 、データベース名 (POSTGRES_DB) はデフォルト値を使ってもいいですが今回は指定しています。

PostgreSQLの公式Dockerfileで利用できる環境変数は PostgreSQLのHubページ を参照して下さい。

JIRAをDockerで立ち上げる

Dockerfileによると、JIRAは8080ポートを使うとのこと。

自分のブラウザから8080ポートでアクセスできるようにして立ち上げてみます。

コンソールから

docker run --name jira --detach --publish 8080:8080 --link postgres-jira:postgres cptactionhank/atlassian-jira:latest

で立ち上げます。
--link でPostgreSQLを利用できるようにしておきます。
PostgreSQLと同様に --name で名前をつけておき、 docker start jira で起動できるようにしています。

立ち上がったらブラウザから http://localhost:8080/ を開きます。

JIRAのセットアップ

初期画面

ブラウザで開くとこのような画面が表示されます。
※右上の「言語」メニューから日本語を選択しています。

jira01.png

「自分でセットアップする」を選択。

データベースのセットアップ

jira02.png

データベースのセットアップでは「お使いのデータベース」を利用します。
なんでかわかりませんが、最初に「組み込み」を選んだときにはコンテナを再起動したときにエラーが出てJIRAが立ち上がらなかったためデータベースを利用します。

ホスト名は docker inspect postgres-jira を実行し、IPAddressとなっているものを入力します。今回は 172.17.0.2 でした。
ほんとは環境変数でJIRAの docker run 時に渡したりできるのでそれを使ってセットアップするべき?この辺はノウハウわかってないです。

アプリケーションプロパティをセットアップ

jira03.png

別のJIRAからのデータのインポートも出来ますが、今回は新規なのでこのまま作成します。アプリケーションタイトル、ベースURLを適当に設定します。

ライセンスキーの入力

jira04.png

所持しているライセンスキーを使うか、マイアトラシアンのライセンス画面 からJIRA Core用の評価用ライセンスを作成します。

管理者アカウントのセットアップ

jira05.png

管理者アカウントを登録します。筆者は管理者=唯一のユーザーとして利用することを想定して登録しました。

メール通知のセットアップ

jira06.png

通知をメールで送る設定。書いてある通りあとでセットアップも可能。SMTPサーバーが必要です。

今回はスキップで。

Welcome to JIRA, (管理者)!

jira07.png

日本語を選んで終わり。
アバターを選び、プロジェクトを作成してからシステム設定をしましょう。

とりあえずシステム設定で時間帯をJSTに変更しました。

JIRAの停止/起動

Docker compose化してないので、 jira -> postgres の順で停止するようにします。

  • 停止するとき
    • docker stop jira && docker stop postgres-jira
  • 起動するとき
    • docker start postgres-jira && docker start jira

docker startdocker run 時の引数のまま起動してくれる機能、という理解をしています。

終わりに

Docker for Macを使ってAtlassian JIRAをコンテナで立ち上げたときの備忘録を書きました。

Docker for Macはまだベータ版ですが、今回のように適当なLinuxコンテナを動かす分には問題なく動かすことが出来ました。

ただ Docker for Macをアンインストールするとイメージやコンテナも削除される とか 仮想ディスクがディスク容量を逼迫する といった罠があるようですのでご注意下さい。

今後の予定

  • Docker composeでJIRAとPostgreSQLをまとめる
  • docker run時の --restart 引数でホスト起動時に自動的にJIRAが起動するようにする
  • VPSサーバーに移行する

  1. PostgreSQL / MySQLとセットになっているものもあるので、そういうのを選ぶのもあり。 

4
7
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
7