Wordpressとは
WordpressとはPHPというプログラミング言語で作られていて, いわゆるCMS(コンテンツ・マネジメント・システム)の一種でブログやWebサイトを爆速で作ることができるツールです。
実はエンジニア歴6年が経とうとしているに実際に使ったことがなく,
今アフィリエイトを始めてみようというときにとりあえずの環境が欲しくて今回導入を決めました
ローカルにそのまま環境構築してもいいのだが, AWSなどのサーバーにアップする予定だし, 使わなくなったら綺麗にしたいしでDockerで構築することにした
本題に入る前に
仮に本記事を見て, 疑問点や詰まったりなどした場合は以下のサービスにてご相談に乗りますのでお気軽にお問い合わせくださいませ^
2000円と記載ございますが, お見積もり時に内容確認できましたら500円~承ります
dockerの環境がそもそもないよって方は以下の記事をご覧いただければと思います
WordpressのDocker image
そもそもwordpressのdocker imageが存在するのか確認していなかったので検索
$ docker search wordpress
まぁ勿論ありますね
環境
macOS Big Sur 11.2.3
手順
1. docker-compose.ymlを作成する
version: '3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
少しずつ解説していきます
version
version: '3'
docker-composedで使用するバージョンです。
公式サイトによると2022/02/06時点だと3.X系が最新のようですね。
まぁ古いものを使う理由もないので今回は3を指定しました。
ちなみにこのバージョンによってComposeFileの書き方は変わってくるので注意が必要ですね。
services
docker-composeではアプリケーションを動かす要素をserviceと呼んでいて, servicesの中に使う要素について記述していきます。
今回だとデータベースとWordpressが指定されています。
db
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
image: imageファイルとバージョンの指定
→今回だとmysqlの5.7を指定
volumes: マウントする設定ファイルのパスを指定(mysqlのconfなど)。
→今回はデータの永続化のためにも名前付きデータボリュームを指定しました
※データの永続化 → コンテナの停止⇄起動をしてもデータが失われない
restart: 実行時に再起動するかどうか
environment: DBについての環境変数設定(パスワードなど)
MYSQL_ROOT_PASSWORD: rootユーザーのパスワード(任意)
MYSQL_DATABASE: 構築するデータベース名(任意)
MYSQL_USER: 作成するユーザー名(任意)
MYSQL_PASSWORD: 作成するユーザーのパスワード(任意)
正直ここら辺は難しく考えずにまずはコピペでもいいとは思います!
wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
先程とかぶる内容は割愛します
depends_on: コンテナの依存関係を定義
→今回だとDBを起動した後にwordpressが起動するようにしています
ports: DockerImageを立ち上げる際のポート番号
→今回だと localhost:8000 へのアクセスがコンテナ内の80ポートに送信されます
volumes
volumes:
db_data:
先程dbで定義した名前付きボリュームをトップレベルに記載することでデータの永続化の設定が完了する
2. docker-composeを実行
docker-compose.ymlがあるディレクトリに移動をして以下のコマンドで起動
$ docker-compose up -d
長々ログが吐き出されますが, 最終的にdoneが出たら完了
3. ブラウザで確認してみる
localhost:8000にアクセスする
無事wordpress環境構築できました🎉
爆速すぎて笑っちゃいますね所要時間多分5分もかかってない笑
終わりに
いかがでしたでしょうか? docker様様という感じですね、、本当に頭が上がらないです
本記事についてや, railsの環境を構築したい!みたいなことがありましたら以下よりご相談いただけると幸いでございます^^
内容に応じて500円~サポートさせていただきます!
他にも記事を書いておりますのでお時間ございましたら是非ご覧になっていただければと思います!
最後までご覧いただきましてありがとうございました!