GCPと言ってもDebianのインスタンス立ち上げて
Docker Compose入れてWordPress立ち上げるだけなんだけどね
私の場合は、WordPressをHeadlessCMSとしてのみ使おうとしていますので最小構成でもなんとかなるかなって思ってます。
GCPの無料枠のインスタンス
2年後もずっと無料枠のインスタンスは以下です。
- f1-micro インスタンス(1 か月あたり、北バージニア [us-east4] を除く米国リージョンのみ)
- 30 GB-月の HDD
- 5 GB-月のスナップショット(一部のリージョン)
- 1 GB の北米から全リージョン宛ての下りネットワーク(1 か月あたり、中国とオーストラリアを除く)
で構築します。
インスタンスのOSはデフォルトだったDebianにしました。
(UbuntuやRasbianよく触ってたしね)
あ、80番ポートは開けておいてね。
- HTTPトラフィックを許可する
- HTTPSトラフィックを許可する
GCPのssh接続
GCPにログインしてハンバーガーメニューを押します。
「Compute Engine」 -> 「メタデータ」 -> 「ssh認証鍵」で自分の鍵を登録します。
鍵の一番最後は、接続するユーザ名になっているので接続したいユーザ名で登録してください。
(ブラウザのsshで接続した時と同じ名前がいいと思う。)
Dockerのインストール
インストールはめちゃ簡単でした。
curl -fsSL https://get.docker.com/ | sh
docker --version
sudo無しで実行できるようにする
このままだとsudoないと怒られます。
なので自分にdockerの権限を付与します。
sudo gpasswd -a $USER docker
newgrp docker
これでdocker
はsudo無しで行けるようになりました。
docker ps
Docker Composeのインストール
これまたDocker Composeもインストールめちゃ簡単でした。
公式を参考に/usr/local/bin
に入れます。
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
終了!
Docker ComposeでWordPress構築します。
作成するのは、
- docker-compose.yml
- .env
version: "3"
services:
wordpress:
image: wordpress:5.2
volumes:
- ./wp-content:/var/www/html/wp-content
container_name: wordpress
ports:
- "80:80"
links:
- mysql
env_file: .env
mysql:
image: mariadb
volumes:
- ./db-data:/var/lib/mysql
container_name: mysql
env_file: .env
# WordPress
WORDPRESS_DB_NAME=wordpress
WORDPRESS_DB_USER=wp_user
WORDPRESS_DB_PASSWORD=secretpw0001
WORDPRESS_DB_HOST=mysql
# VIRTUAL_HOST=localhost
# MySQL
MYSQL_RANDOM_ROOT_PASSWORD=secretpw0002
MYSQL_DATABASE=wordpress
MYSQL_USER=wp_user
MYSQL_PASSWORD=secretpw0001
そして、WordPressが起動できました!!!
めでたしめでたし!