👻

EC2でwordpressを立てる

2021/12/10に公開

作成例

wordpressを立てるときにどうするか?

※C名前、IDRブロックなど画像を参照してください

  • 1.VPC作成
  • 2.インターネットゲートウェイ作成
  • 3.VPCへアタッチ
  • 4.ルートテーブル変更
  • 5.セキュリティグループ作成
  • 6.サブネット作成
  • 7.EC2インスタンス作成
  • 8.ターゲットグループ作成
  • 9.ロードバランサー作成
  • 10.RDS作成
  • 11.WordPressをインストール
  • 12/ec2テンプレート作成

1. VPC作成

下記の画像のように作成

項目
名前タグ wp-VPC
IPv4 CIDR 10.0.0.0/21

2. インターネットゲートウェイを作成

項目
名前タグ wp-IGW

3.VPCへアタッチ

VPCとゲートウェイを紐づけ

インターネットゲートウェイ作成後、右上にアクション欄があるので、VPCにアタッチを選択します。
その後、上記のような表示で、最初に作成したVPCを入力します

4.ルートテーブル変更

送信先 ターゲット
0.0.0.0/0 wp-IGW
ルートテーブルから自分のVPCを選択し、ルートからルートの編集を行います
送信先、ターゲットに上記を入力します、ターゲットはゲートウェイを選択します。

5.セキュリティグループの作成

wp-WEB-SGの作成

項目
セキュリティグループ名 wp-WEB-SG
説明 wp-WEB-SG
VPC wp-VPC
インバウンドルール
SSHとHTTPをすべてから許可する。
タイプ ソース
---- ----
HTTP 任意の場所
SSH 任意の場所

wp-RDS-SGの作成

項目
セキュリティグループ名 wp-RDS-SG
説明 wp-RDS-SG
VPC wp-VPC

インバウンドルール
MYSQL/Auroraをwp-WEB-SGから許可する。

タイプ ソース
MYSQL/Aurora wp-WEB-SG

6.サブネット作成

冗長化構成の為、アベイラビリティーゾーンを2つに分けて以下の内容でサブネットを4つ作成する。

VPC ID サブネット名 アベイラビリティーゾーン IPv4 CIDRブロック
wp-VPC wp-public-subnet-1 ap-northeast-1a 10.0.0.0/24
wp-VPC wp-public-subnet-2 ap-northeast-1c 10.0.1.0/24
wp-VPC wp-public-subnet-A ap-northeast-1a 10.0.2.0/24
wp-VPC wp-public-subnet-B ap-northeast-1c 10.0.3.0/24
新しいサブネット追加で同時に複数作成できます
作成が完了すると以下のように表示されます

7.EC2インスタンス作成

EC2インスタンスを作成し、WEBサーバー・WordPressのインストールと設定を行います。

wp-web-server-1作成

項目
1.AMI選択 Amazon Linux 2 AMI (HVM) - Kernel 5.10, SSD Volume Type
2.インスタンスタイプの選択 t2.micro
3.インスタンスの詳細設定 ネットワーク・サブネット・自動割り当てパブリックIP
4.ストレージの追加 デフォルト
5.タグの追加 wp-web-server-1
6.セキュリティグループの設定 wp-WEB-SG
7.キーペア設定 既存の物で

1.2.AMI・インスタンスタイプは無料枠です。
3.インスタンスの詳細設定は以下のように

項目
ネットワーク wp-VPC
サブネット wp-public-subnet-1
自動割り当てパブリックIP 有効

5.タグの追加

項目
Name wp-web-server-1

6.セキュリティグループ設定

項目
セキュリティグループ wp-WEB-SG

7.キーペアの設定

8.ターゲットグループの作成

ロードバランサーがターゲットにするEC2インスタンスを入れる箱?的な感じのものを作成。

wp-WEB-TG

EC2メニューからターゲットグループを選択し「Create target group」をクリック。

項目
Choose a target typ Instances
Target group name wp-WEB-TG
VPC wp-VPC
Health check path /readme.html

9.ロードバランサ―作成

ロードバランサーの種類を選択

ロードバランサーの設定

項目
名前 wp-WEB-LB
VPC wp-VPC
アベラビリティーゾーン ap-northeast-1a, ap-northeast-1c
サブネット wp-public-subnet-1, wp-public-subnet-2
セキュリティグループ wp-WEB-SG

10.RDS作成

サブネットグループ作成

wp-RDS-SUBNET

項目
名前 wp-RDS-SUBNET
説明 wp-RDS-SUBNET
VPC wp-VPC
アベイラビリティゾーン ap-northeast-1a, ap-northeast-1c
サブネット 10.0.2.0/24, 10.0.3.0/24

データーベースの作成

冗長化構成の為、マルチAZ配置で作成。
RDSを起動したままにすると43.48USDくらいかかるらしいので要注意。

項目
データーベースの作成方法を選択 標準作成
エンジンのタイプ MySQL
テンプレート 開発/テスト
DBインスタンス識別子 wp-database-1
マスターユーザー名 wordpress
マスターパスワード 任意
パスワードを確認 マスターパスワードと同じ
DBインスタンスクラス Texバースト可能クラス(tクラスを含む):db.t3.micro:以前の世代のクラスを含める
マルチAZ配置 スタンバイインスタンスを作成する
VPC wp-VPC
サブネットグループ wp-rds-subnet
VPCセキュリティグループ 既存の選択:wp-RDS-SG
最初のデータベース名 wordpress

エンドポイントの確認

WordPress設定時にエンドポイントの情報が必要なため覚えておく。

11.WordPressをインストール

初期設定

EC2から接続を行い下記のコマンドを入力します。(アップデート、phpインストール、Apacheインストール)

sudo su -
yum -y update
amazon-linux-extras install php7.4 -y
yum -y install mysql httpd php-mbstring php-xml gd php-gd
systemctl enable httpd.service
systemctl start httpd.service

WordPressのダウンロードと配置

wget http://ja.wordpress.org/latest-ja.tar.gz ~/
tar zxvf ~/latest-ja.tar.gz
cp -r ~/wordpress/* /var/www/html/
chown apache:apache -R /var/www/html

ブラウザへパブリックIPを入力

http://【wp-web-server-1のパブリックIP】

WordPressの初期画面が表示されればOK。
そのままWordPressの初期設定を始めます。

WordPressの設定

項目
データベース名 wordpress
ユーザー名 wordpress
パスワード RDS作成時に設定したパスワード
データベースのホスト名 RDSエンドポイント
テーブル接頭辞 wp_


上記のようなエラーが発生しました。
今後このエラーを解決していこうと思います。

Discussion