DockerでRedmine環境構築
前提
・Dockerが、すでにインストールされていること。
はじめに
今回、docker-compose.yml作成を行います。
以下、やることの目標になります。
・Dockerを使ってRedmineを作る
・プラグインを入れる
基本的な事は、公式に書いてあるので参照していただければ幸いです。
Redmine公式はこちら
ディレクトリ構成
手始めに、作業ディレクトリとして以下のように、
フォルダを作成して頂くとスムーズかと思います。
redmine ├── mysql_data └── redmine_data ├── plugins └── themes
Dockerを使ってRedmineを作る
準備
公式のymlを参考に作ります。(バージョンの固定とポート、DBパスワードのみ修正)
以下のdocker-compose.ymlを作成すれば、ここでの作業は、完了になります。
・ディレクトリ
redmine ├── docker-compose.yml ←追加 ├── mysql_data └── redmine_data ├── plugins └── themes
・docker-compose.yml
version: '3.1' services: redmine: image: redmine:4.0.3 restart: always ports: - 3000:3000 environment: REDMINE_DB_MYSQL: db REDMINE_DB_PASSWORD: password db: image: mysql:5.7 restart: always environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: redmine
実行
以下、コマンドを打ちます。
(完了まで少し時間が掛かると思う。)
$ cd 配置場所までのパス/redmine $ docker-compose up
ブラウザで「localhost:3000」にアクセスしてみましょう。
見慣れたredmineの画面が表示されるはずです。
確認後、ターミナル(パワーシェル)で「ctrl + c」で停止します。
プラグインを入れる
準備
コマンドを打ち込んで入れるのも面倒なので、ローカル環境にマウントしてみましょう。
(ついでにテーマも!)
これで、入れる準備は完了です。
・docker-compose.yml
version: '3.1' services: redmine: image: redmine:4.0.3 restart: always ports: - 3000:3000 environment: REDMINE_DB_MYSQL: db REDMINE_DB_PASSWORD: password volumes: - ./redmine_data/plugins:/usr/src/redmine/plugins ←追加 - ./redmine_data/themes:/usr/src/redmine/public/themes ←追加 db: image: mysql:5.7 restart: always environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: redmine
プラグイン配置
マウントしたフォルダにプラグインを配置しましょう。
redmine ├── docker-compose.yml ├── mysql_data └── redmine_data ├── plugins │ ├── easy_gantt ←追加 │ └── redmine_issue_templates ←追加 └── themes
DB作成
作成したイメージを動かしてみましょう。
おそらくエラーが出始めるので、一旦置いておきます。
(原因は、テーブルが足りないからです。)
$ cd 配置場所までのパス/redmine $ docker-compose up
次に、別ターミナルを開きます。
以下、コマンドを実行しましょう。
(easy_ganttしか載せていませんが、プラグインのReadMeを見て必要なら他のプラグインにも実行してください。)
$ docker ps $ docker exec -it コンテナID(一番左に表示されてる) bash root@コンテナID:/usr/src/redmine# cd /usr/src/redmine/plugins root@コンテナID:/usr/src/redmine# cd easy_gantt(対象プラグインのフォルダ) root@コンテナID:/usr/src/redmine# rake redmine:plugins:migrate RAILS_ENV=production
放置していたターミナル(パワーシェル)上で、「ctrl + c」を押して停止します。
停止できたら再度、起動します。
これで、エラーが出ていなければ完了です。
お疲れ様でした。
(Redmineの画面で、プラグインが入っていることの確認を忘れずにね。)
$ docker-compose up