LoginSignup
13
14

More than 3 years have passed since last update.

Growi × Docker × EC2構築

Last updated at Posted at 2019-09-20

概要

AWSでEC2インスタンスを立てて、そこにdocker環境を作り、その上でGrowiを運用する方法をご紹介します。
ちなみに、EC2インスタンス構築の記事はたくさんありますので、それらの詳細は省かせていただきます.

EC2構築の参考
- AWSでのEC2構築
- Elastic IP(固定 IP)の割り当て

環境

  • マシンイメージ: Amazon Linux 2 AMI (HVM), SSD Volume Type

構築

root昇格

$ sudo su -

dockerインストール

$ yum install -y docker

// 確認
$ docker -v
Docker version 18.06.1-ce, build e68fc7a215d7133c34aa18e3b72b4a21fd0c6136

docker-composeインストール

公式を参照して最新を取得してください。

$ curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose

// 確認
$ docker-compose -v
docker-compose version 1.24.1, build 4667896b

自動起動設定

$ systemctl enable docker

docker実行ユーザー設定

dockerグループ作成(なければ)

$ groupadd docker

現行ユーザをdockerグループに所属させる

$ gpasswd -a $USER docker

dockerデーモンを再起動

$ systemctl restart docker

exitして再ログインすると反映

$ exit

$ sudo su -

Growiインストール

gitインストール

$ yum install -y git

Growiをクローン

$ cd /home/ec2-user
$ git clone https://github.com/weseek/growi-docker-compose.git growi

外部から80ポートでアクセスできるように変更

$ cd /home/ec2-user/growi
$ vi docker-compose.yml
app:
    build:
      context: .
      dockerfile: ./Dockerfile
    ports:
      - 80:3000 # ← 公式の説明通り、ローカル以外からも使いたいので`127.0.0.1`を外す
    links:
      - mongo:mongo
      - elasticsearch:elasticsearch
    depends_on:
      - mongo
      - elasticsearch

コンテナ起動

$ docker-compose up -d

確認

グローバルIP(Elastic IP)または設定したドメインの3000ポートにブラウザからアクセスしてみてください。

以下のような画面が表示されれば成功です!!

スクリーンショット 2019-09-20 10.46.56.png

参考記事
- growi-docker-compose
- Dockerコマンドをsudoなしで実行する方法

13
14
1

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
13
14