AWSを使ってWordPressをセットアップする手順を簡単に解説します。
DockerでのWordPressセットアップに焦点を当て、EC2の起動、WordPressインストール、管理画面アクセスまでを説明します。
WordPressって?
WordPressは、世界中で人気のコンテンツ管理システム(CMS)です。初心者でも扱いやすく、プラグインやテーマも豊富でブログを簡単に作成できます。AIや副業に興味がある方にとって、WordPressの運営は非常に有用です。
.pem(秘密鍵)の作成とEC2インスタンスへの接続準備
EC2インスタンスをセキュアに管理するためには、.pem(秘密鍵)が必要です。以下の手順で作成できます。
EC2インスタンスの作成と秘密鍵の設定
AWS Management Console にログインし、EC2を選択します。
インスタンスの起動画面で、以下を設定します:
キーペアを作成します:
- キーペアの作成時に新しいキー名を指定
(例)aws-key-yyyymmdd - 秘密鍵(.pem)をダウンロードします。このファイルは、インスタンスにSSHで接続するために必要です。
.pemファイルのパーミッション設定
ダウンロードした.pemファイルは、適切なパーミッションを設定します。
以下のコマンドで設定します:
chmod 400 /path/to/your/aws-key-yyyymmdd.pem
これにより、秘密鍵が外部からアクセスできないように設定されます。
EC2インスタンスへのSSH接続
インスタンスの起動後、SSHを使って接続します。
以下のコマンドを実行して、EC2インスタンスにアクセスします。
ssh -i "aws-key-yyyymmdd.pem" ec2-user@<Your-EC2-Public-IP>
注意点:
- <Your-EC2-Public-IP>は実際に作成したインスタンスのパブリックIPアドレスに置き換えます。
- 権限のエラーが出た場合、.pemの権限をchmod 400で確認します。
Dockerのインストール
次に、Docker をインストールします。
MySQLとWordPressをセットアップするためにDockerを使用します。
sudo yum update -y
sudo yum install -y docker
Dockerをインストールしたら、以下のコマンドでサービスを起動します:
sudo systemctl start docker
sudo systemctl enable docker
これで、Dockerがインスタンス上で実行可能になります。
MySQLとWordPressのコンテナを起動
次に、MySQLとWordPressをDockerコンテナで起動します。
MySQLコンテナを起動
docker run -d --name mysql-container -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=wordpress -p 3306:3306 mysql:8.0
このコマンドでMySQLが3306ポートで起動します。
WordPressコンテナを起動
docker run -d --name wordpress-container --link mysql-container:mysql -p 8080:80 -e WORDPRESS_DB_HOST=mysql:3306 -e WORDPRESS_DB_NAME=wordpress -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=password wordpress:latest
これでWordPressが8080ポートで起動します。
WordPressのセットアップ
ブラウザを開き、http://<Your-EC2-Public-IP>:8080にアクセスします。
インストール画面が表示されたら、言語を選択、サイト名や管理者の情報を入力します。
WordPress管理者のログイン情報:
- ユーザー名:(例)admin
- パスワード:インストール時に設定したパスワード(例)password
セキュリティグループの設定
管理画面にアクセスできない場合、セキュリティグループの設定を確認しましょう。
EC2セキュリティグループで、HTTP(80)とSSH(22)を確認し。
もし8080ポートを使用している場合も、そのポートを開放する必要があります。
セキュリティグループの設定方法:
- EC2 Management Consoleでインスタンスを選択します。
- セキュリティタブに移動し、セキュリティグループを選択します。
- インバウンドルールで、HTTP(80)と SSH(22)を 0.0.0.0/0(IPアドレス)に開放します。
振り返り:つまづきポイントと学び
- ポートの競合:
- MySQLの3306ポートとWordPressの8080ポートが競合した場合、適切にポートを変更しましょう。
- Dockerの扱い:
- Dockerの基本的な操作(停止・削除)も忘れずに実行しましょう。
- docker rmやdocker stopを使ってコンテナを管理します。
- WordPress管理画面へのログイン:
- 管理画面へのログイン時のパスワードはインストール時に設定したものを使用するので忘れずにメモしておきましょう。