LightsailでDropalを構築していきます
マネージメントコンソールで実施する場合とCLIで実施する場合のそれぞれのメリット、デメリットがあるのでまとめます
コンソール(マネジメントコンソール)
メリット
- 画面で状態が把握しやすく、初回でも迷いにくい
- 料金プラン・ブループリントなどを視覚的に比較できる
- その場でブラウザSSHやスナップショット操作が直感的
デメリット
- 作業の再現性が低い(人手操作=ミスや設定ドリフトが起きやすい)
- 複数環境(stg/prod)や再構築のたびに同じ操作を手作業で繰り返す必要
- 自動化しづらく、履歴(手順の証跡)が残りにくい
今回はSSO設定も整っている為、CLIでDropalのSTG環境を構築していきます。
ステップ 0: 変数の設定
export AWS_PROFILE=rikkainc
export AWS_REGION=ap-northeast-1
export LS_NAME=rikka-drupal-stg
export LS_BLUEPRINT=drupal
export LS_BUNDLE=nano_2_0 # 最小プラン。必要なら後で拡張可能
export STATIC_IP_NAME=${LS_NAME}-ip
export STG_DOMAIN=stg.rikkainc.jp
まずは変数をセットして、後のコマンドをシンプルにします
ステップ 1: Lightsail インスタンス作成
aws lightsail create-instances \
--profile $AWS_PROFILE --region $AWS_REGION \
--instance-names $LS_NAME \
--availability-zone ${AWS_REGION}a \
--blueprint-id $LS_BLUEPRINT \
--bundle-id $LS_BUNDLE
Bitnami の Drupal イメージを起動します
aws lightsail get-instance-state \
--profile $AWS_PROFILE --region $AWS_REGION \
--instance-name $LS_NAME
状態を確認する(”running” になれば起動完了です)
ステップ 2: 固定IPを割り当て
aws lightsail allocate-static-ip \
--profile $AWS_PROFILE --region $AWS_REGION \
--static-ip-name $STATIC_IP_NAME
aws lightsail attach-static-ip \
--profile $AWS_PROFILE --region $AWS_REGION \
--static-ip-name $STATIC_IP_NAME \
--instance-name $LS_NAME
STATIC_IP=$(aws lightsail get-static-ip \
--profile $AWS_PROFILE --region $AWS_REGION \
--static-ip-name $STATIC_IP_NAME \
--query 'staticIp.ipAddress' --output text); echo $STATIC_IP
この後のDNS設定で使用するので表示された $STATIC_IP を控えておきます
ステップ 3: パブリックポート開放
for p in 22 80 443; do
aws lightsail open-instance-public-ports \
--profile $AWS_PROFILE --region $AWS_REGION \
--instance-name $LS_NAME \
--port-info fromPort=$p,toPort=$p,protocol=TCP
done
ステップ 4: SSH でログイン & 管理者パスワード取得
Lightsailはリージョンごとに「規定の秘密鍵」を自動生成しているので、最初に1回コンソールから秘密鍵(.pem)をダウンロードする必要があります。
ダウンロードした鍵はローカルの~/.ssh/に配置してパーミッションを変更します
鍵をダウンロード

- AWS コンソール → Lightsail
- 右上の「アカウント」 → 「アカウント」
- 「SSHキー」タブを開く
- 東京リージョン (ap-northeast-1) の Default key をダウンロード
→ 例: LightsailDefaultKey-ap-northeast-1.pem
ローカルに配置
mv ~/Downloads/LightsailDefaultKey-ap-northeast-1.pem ~/.ssh/
chmod 600 ~/.ssh/LightsailDefaultKey-ap-northeast-1.pem
ターミナルでダウンロードした秘密鍵を移動してパーミッションを変更します
ssh -i ~/.ssh/LightsailDefaultKey-ap-northeast-1.pem bitnami@$STATIC_IP
SSHでログインできることを確認します
Drupal 管理パスワード取得
cat /home/bitnami/bitnami_application_password 2>/dev/null
ログイン出来たらDrupal管理パスワードを取得して控えておきます。
最近のBitmaniはbitmiani_credentialsファイルを使わず、bitnami_application_password に統一されています
ステップ 5: 動作確認
http://$STATIC_IP/
ブラウザでDrulapが表示されるか確認します
$STATIC_IPにはステップ 3: パブリックポート開放で取得したIPアドレスを入れます

http://$STATIC_IP/user/login
ブラウザでDrupalが表示されることを確認できたら管理画面に入れるか確認します

Usernameは「user」、PasswordはDrupal 管理パスワード取得で控えておいたパスワードです
ここまででLightsailでDropal環境をCLIで構築出来ました