DockerでWordPressを構築する

DockerでWordPressを構築するときに必要なもの

  • WordPressコンテナ
  • MySQLコンテナ
  • コンテナをつなぐ仮想的なネットワーク

Dockerネットワークを作成・削除するコマンド

// Dockerネットワークを作成する
// docker network create ネットワーク名

// Dockerネットワークを削除する
// docker network rm ネットワーク名

ネットワークを作成する

// ネットワークを作成
docker network create wordpress000net1

MySQLコンテナを作成するコマンド

docker run
	--name mysql000 // コンテナ名
	-dit // バックグラウンドで実行、キーボードで操作する
	--net=wordpress000net1 // ネットワークを紐づける
	-e MYSQL_ROOT_PASSWORD=myrootpass // MySQLのパスワードを設定する環境変数
	-e MYSQL_DATABASE=wordpress000db // MySQLのデータベース領域名を設定する環境変数
	-e MYSQL_USER=wordpressapp // MySQLのユーザー名を設定する環境変数
	-e MYSQL_PASSWORD=userpass // MySQLの一般ユーザーのパスワードを設定する環境変数
mysql
	--character-set-server=utf8mb4 // 文字コードをUTF8にする
	--collation-server=utf8mb4_unicode_ci // 照合順序をUTF8にする
	--default-authentication-plugin=mysql_native_password // 認証方式を古いもの(native)に変更。コンテナ作成失敗するため削除すること

// コマンドプロンプト入力用
docker run --name mysql000 -dit --net=wordpress000net1 -e MYSQL_ROOT_PASSWORD=myrootpass -e MYSQL_DATABASE=wordpress000db -e MYSQL_USER=wordpressapp -e MYSQL_PASSWORD=userpass mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

WordPressコンテナを作成するコマンド

docker run 
	--name wordpress000 // コンテナ名 
	-dit // バックグラウンドで実行、キーボードで操作する
	--net=wordpress000net1 // 紐づけたいネットワーク
	-p 8085:80 // ポート番号を指定する
	-e WORDPRESS_DB_HOST=mysql000 // データベースのコンテナ名 
	-e WORDPRESS_DB_NAME=wordpress000db // データベースの領域名
	-e WORDPRESS_DB_USER=wordpressapp // データベースのユーザー名
	-e WORDPRESS_DB_PASSWORD=userpass // データベースのパスワード
wordpress

// コマンドプロンプト入力用
docker run --name wordpress000 -dit --net=wordpress000net1 -p 8085:80 -e WORDPRESS_DB_HOST=mysql000 -e WORDPRESS_DB_NAME=wordpress000db -e WORDPRESS_DB_USER=wordpressapp -e WORDPRESS_DB_PASSWORD=userpass wordpress

プラウザで http://localhost:8085/ にアクセス

Dockerを削除する

// コンテナを停止
docker stop wordpress000
docker stop mysql000

// コンテナの削除
docker rm wordpress000
docker rm mysql000

// イメージの削除
docker image rm wordpress
docker image rm mysql

// ネットワークの削除
docker network rm wordpress000net1