インフラ

【AWS】AMIを使ってEC2にRedmineを構築しよう!【VPCから構築!】

aws-ami-redmine

こんばんは!光です。

大手グローバル企業でWebエンジニアをやっています。

Webエンジニアを目指してプログラミングを勉強している初心者の方向けに情報を発信しています。

経歴や実績はこちら

システム開発のお仕事の依頼もお待ちしております。

お問い合わせページTwitterのDMからお気軽にお問い合わせください!

今回はこのような質問をいただきました。

自分でRedmineを構築したい!

そこで今回はAWS上にRedmineサーバーを構築する手順について解説していきます!

AMIを使うことで非常に簡単に構築することができます。

環境
  • Redmine 4.1.0.stable
  • AWS
    • EC2
    • AMI

今だとLightsailを使ったほうが簡単に構築できるかも!

VPCの構築

すでに存在しているVPCにRedmineサーバーを立てる場合はこちらの作業は不要です。EC2インスタンスの構築から始めてください。

まずはVPCを構築します。

こちらの設定はRedmineサーバーに限らず、ほぼ共通ですね。

VPCの作成

VPCダッシュボードからVPCを作成します。

ダッシュボード右上のリージョンは東京を選択してください。

VPCの作成

Redmine専用のVPCにする予定だったので次のように設定しました。

  • 名前タグ:redmine-vpc
  • IPv4 CIDR ブロック*:172.30.0.0/26
  • IPv6 CIDR ブロック:IPv6 CIDR ブロックなし
  • テナンシー:デフォルト

VPCを作成したらアクションのDNS 解決の編集DNS ホスト名の編集よりそれぞれを有効化しておきましょう!

インターネットゲートウェイの作成

インターネット上からアクセスできる必要があるのでインターネットゲートウェイを作成します。

インターネットゲートウェイの作成

設定項目は名前タグのみなので任意の設定で問題ないです。

  • 名前タグ:redmine-igw

作成が終わったら、アクション→VPCにアタッチより先ほど作成したVPCにアタッチしておきましょう!

ルートテーブルの作成

次にパブリックとプライベートの2つのルートテーブルを作成します。

まずはルートテーブルの作成より任意の名前のルートテーブルを2つ作成します。

VPCは先ほど作成したVPCを選択します。

作成したらルートの編集を行います。

パブリックのルートテーブルにインターネットゲートウェイのルートを追加します。

ルートの編集
  • 送信先:0.0.0.0/0
  • ターゲット:igw-xxxxxxxxxxxxx(先ほど作成したigw)

プライベート用のルートテーブルはそのままで大丈夫です。

ルートテーブル一覧

こんな感じになっていれば大丈夫です。(redmine-privateのルートはlocalのみ)

サブネットはこのあと設定します。

サブネットの作成

こちらもルートテーブルと同様にパブリックとプライベートの2つを作成します。

サブネットの作成
  • 名前タグ:redmine-public
  • VPC*:先ほど作成したVPC
  • アベイラビリティーゾーン:ap-northeast-1a
  • IPv4 CIDR ブロック*:172.30.0.0/27
  • 名前タグ:redmine-private
  • VPC*:先ほど作成したVPC
  • アベイラビリティーゾーン:ap-northeast-1c
  • IPv4 CIDR ブロック*:172.30.0.32/27

作成後、それぞれのサブネットにルートテーブルを関連付けます。

アクション→ルートテーブルの関連付けの編集より行います。

パブリックのサブネットにはパブリックのルートテーブル、プライベートのサブネットにはプライベートのルートテーブルを関連付けます。

これでVPCの構築は完了です。

EC2インスタンスの構築

ここからはEC2ダッシュボードでの操作になります。

インスタンスの作成

今回はAMIを使ってインスタンスを作成します。

インスタンスの作成画面でAMIを選択することができます。

AWS Marketplaceで「redmine bitnami」と検索することで簡単にRedmineのAMIを見つけられます。

インスタンスの作成

こちらのAMIは無料で利用することができます。

今回は次のような設定で作成しました。

記述していない項目はデフォルト値です。

  • インスタンスタイプ:t2.micro
  • インスタンス
    • ネットワーク:先ほど作成したVPC
    • サブネット:redmine-public(パブリックのサブネット)
    • 自動割り当てパブリック IP:有効
  • ストレージ
    • サイズ:50(GiB)
  • タグ:
    • キー:Name
    • 値:redmine
  • セキュリティグループ(アクセス制限が必要な場合)
    • SSH:マイ IP
    • HTTP:マイ IP
    • HTTPS:マイ IP

これだけでRedmineサーバが立ち上がるはずです!

アクセスしてみる

先ほど作成したEC2のIPv4 パブリック IPかパブリック DNS (IPv4)にアクセスしてみましょう。

Redmineが立ち上がっているはずです。

初期ユーザーのパスワードはインスタンスのシステムログに表示されています。

アクション→インスタンスの設定→システムログの取得を開くと一番下から少し上のところに表示されています。

システムログの取得

ログインID:user
パスワード:塗りつぶし部分

こちらの情報を入力することでログインできます。

こちらのパスワードはインスタンス内で動作しているMySQLのrootユーザのパスワードでもあります。

おそらく英語表記となっているので日本語化を行います。

Administration→Usersでuserを選択します。(現在ログインしているユーザー)

LanguageをJapanese(日本語)へ変更することで日本語化されます。

新規でユーザを作成する場合もJapanese(日本語)を選択しましょう!

これでRedmineが使用できるようになったと思います。

関連記事

あとがき

こんなに簡単にRedmineサーバが立てられるのは驚きですね。

VPCから構築したとしても長く見積もって30分くらいでしょうか…

簡単に立てられると同時に最新版を利用できるので積極的に使っていきたいですね。

冒頭にも書きましたが、今だとLightsailを使ったほうが簡単に構築できるかも!