前回の続きというわけではないんですが、せっかく作成したインスタンスがあるので、Docker Compose を使って Redmine をインストールしてみました。備忘録。
AWS の10分間チュートリアルで EC2 インスタンスを起動してから HTTP アクセスするまで - kntmr-blog
バージョン情報
一応、カーネルのバージョンを確認。
$ uname -r
4.14.47-56.37.amzn1.x86_64
Docker インストール
$ sudo yum update -y
$ sudo yum install -y docker
$ docker -v
Docker version 18.03.1-ce, build 3dfb8343b139d6342acfd9975d7f1068b5b1c3d3
$ sudo service docker start
$ sudo usermod -a -G docker ec2-user
$ exit
$ docker info
Docker Compose インストール
Install Docker Compose | Docker Documentation
$ sudo -i
$ curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose
$ exit
$ docker-compose --version
docker-compose version 1.21.2, build a133471
docker-compose.yml 作成
適当なディレクトリに docker-compose.yml
を作成する。
$ vi docker-compose.yml
GitHub - sameersbn/docker-redmine: Docker Image for Redmine
内容は上記にある docker-compose-mysql.yml
とほぼ同じですが、少しだけ手を入れます。全体は以下の通り。
version: '2'
services:
mysql:
image: sameersbn/mysql:latest
environment:
- DB_USER=redmine
- DB_PASS=password
- DB_NAME=redmine_production
volumes:
- /srv/docker/redmine/mysql:/var/lib/mysql
redmine:
image: sameersbn/redmine:latest
depends_on:
- mysql
environment:
- TZ=Asia/Tokyo
- DB_ADAPTER=mysql2
- DB_HOST=mysql
- DB_PORT=3306
- DB_USER=redmine
- DB_PASS=password
- DB_NAME=redmine_production
- REDMINE_PORT=10083
- REDMINE_HTTPS=false
- REDMINE_RELATIVE_URL_ROOT=/redmine
- REDMINE_SECRET_TOKEN=
- REDMINE_SUDO_MODE_ENABLED=false
- REDMINE_SUDO_MODE_TIMEOUT=15
- REDMINE_CONCURRENT_UPLOADS=2
- REDMINE_BACKUP_SCHEDULE=
- REDMINE_BACKUP_EXPIRY=
- REDMINE_BACKUP_TIME=
- SMTP_ENABLED=false
- SMTP_METHOD=smtp
- SMTP_DOMAIN=www.example.com
- SMTP_HOST=smtp.gmail.com
- SMTP_PORT=587
- SMTP_USER=mailer@example.com
- SMTP_PASS=password
- SMTP_STARTTLS=true
- SMTP_AUTHENTICATION=:login
- IMAP_ENABLED=false
- IMAP_HOST=imap.gmail.com
- IMAP_PORT=993
- IMAP_USER=mailer@example.com
- IMAP_PASS=password
- IMAP_SSL=true
- IMAP_INTERVAL=30
ports:
- "10083:80"
volumes:
- /srv/docker/redmine/redmine:/home/redmine/data
実行
Docker Compose を実行して Redmine のコンテナを起動する。
$ docker-compose up -d
10083 ポートで /redmine
にアクセスすると Redmine の画面が表示される。
リバースプロキシ
前回インストールした Apache のリバースプロキシを使って、80 ポートの /redmine
でアクセスできるようにする。
$ sudo -i
$ vi /etc/httpd/conf.modules.d/00-proxy.conf
$ exit
$ sudo service httpd restart
00-proxy.conf
の設定内容は以下の通り。
ProxyRequests Off
ProxyPass /redmine http://127.0.0.1:10083/redmine
ProxyPassReverse /redmine http://127.0.0.1:10083/redmine
80 ポートでアクセスすると Redmine の画面が表示されるはず。admin / admin でログインできます。
まとめ
Docker Compose 便利。