HOME / ブログ一覧 / DockerでWordPress開発環境を構築する

DockerでWordPress開発環境を構築する

もう2年ほど前になりますが、Dockerを学ぶ機会があり、
それからWordPressのローカル環境はDockerを使用していたのですが、
しばらくWEB製作をしていなかったこともあり、使い方を忘れてしまっていました。。

この度、WordPressを1から学習し直す事を決めましたので、
あらためてDockerの使い方を復習しますので、記録しておきたいと思います!
書いておかないと忘れるので・・・ということで行ってみましょう!

Dockerって何?

そもそもDockerとは、「コンテナ」という仮想環境を作成、配布、実行するプラットフォームです。
具体的にどんなことができるかというと、自分のローカル環境に「コンテナ」を作成することによって、様々な開発環境を動作させることができます。
ローカル環境に仮想マシンを作成する機能としてはVirtualBoxが有名ですが、従来の仮想マシンと違うのは、HyperviserやゲストOSはホストマシンのそれを利用するため、とても動作が軽いのが特徴です。

Dockerをインストールする

まずはDockerの公式サイトへアクセス。
https://www.docker.com/

自分の環境にあった版をダウンロード。(今回はMac)

その後、.dmgが開いた後、画面に従いApplicationsフォルダへ移動し、インストール完了です!


↑「アプリケーションフォルダ」にDockerがインストールされています!

Dockerの初期設定をする

次にDockerの初期設定を実施していきます。
ですが、難しいことはなくDockerに表示されるガイドに従ってポチポチと進めていきます。


↑最後にチュートリアルWEBサイトに誘導されます。初めての方は確認しても良いかと思います。(今回は飛ばします)

Dockerをさわってみる

Dockerが動作しているか確認する

まずはDockerが動作しているかを確認します。
MACのファインダーから「アプリケーション→ユーティリティ→ターミナル」を起動します。

そしてコマンド入力。

docker container ls -a

するとコンテナが2つ起動しているのがわかります。
とりあえずDockerは起動しているようなので、WordPressを構築していきましょう!

覚えておきたいDockerコマンド

ここでdockerに慣れておくため基本的なコマンドを記載しておきます。

docker container ls -a

現在存在するコンテナを確認するコマンドです。
-aはオプションで、これをつけることによりUPしていない(動作していない)コンテナも表示できます。

docker exec -it [コンテナ名] /bin/bash

コンテナにログインします。

[control]+p+q

コンテナからログアウトします。

docker start [コンテナ名]

コンテナを起動します。

docker stop [コンテナ名]

コンテナを停止します。

docker rm [コンテナ名]

コンテナを削除します。

docker start $(docker ps -a -1)

全てのdockerコンテナを起動します。

docker stop $(docker ps -q)

起動している全てのコンテナを停止します。

docker rm $(docker ps -q -a)

全コンテナを削除します。

docker rmi $(docker images -1)

全イメージを削除します。

DockerでWordpress開発環境を構築する

ディレクトリ同期について事前に知っておく

これから仮想環境であるコンテナにWordPress環境を構築していきますが、ディレクトリ同期について知っておくと環境構築後の開発がスムーズになります。
Dockerコンテナ内に外部記憶ボリュームとしてローカルのディレクトリを組み込む、ということです。
これを実施すると、ローカルで開発したファイルをコンテナにアップロードすることがなく、シームレスな開発が可能になります!
Docker起動コマンドに次のオプションをつけることで実装可能です。

-v $(pwd):/var/www/html

今回はホームディレクトリの直下に「Docker」というディレクトリを作成し、その中に「wordpress_dev」を作成し、Dockerに組み込んでいきます。

WordPressとMySQLのイメージをビルドする

WordPressの構築は、まずはじめにイメージのビルドをして、次にそのイメージを使ってコンテナを起動します。
では、イメージをビルドするコマンド。

docker pull mysql

イメージのビルドが完了すると下記のような表示になります。

確認コマンドを入力します。

docker images

MySQLがしっかりビルドされていることが確認できます!

続いてWordPressのイメージをビルドしていきます。

docker pull wordpress

イメージのビルドが完了すると下記のような表示になります。

確認コマンドを入力します。

docker images

MySQLがしっかりビルドされていることが確認できます!

MySQLとWordPressのコンテナを起動する

MySQLコンテナを起動する

いよいよコンテナを起動しWordPress環境を構築します。
まずはMySQLを起動します。

docker run —name wordpress_dev-mysql -e MYSQL_ROOT_PASSWORD=[任意のパスワード] -d mysql

少し待つとコマンドラインに戻るので、確認コマンドを入力します。

docker container ls -a

しっかりとMySQLが起動しているのが確認できました!

WordPressコンテナを起動する

そして、WordPressのコンテナを起動。

docker run —name wordpress_dev —link wordpress_dev-mysql -d -p 8080:80 -v $(pwd):/var/www/html wordpress

確認コマンドを入力。

WordPressコンテナが起動しています!
そして、ローカルフォルダを確認すると、、、しっかりとWordPressを構成するファイル群が作成されました!

最後にブラウザから確認。http://localhost:8080へアクセスします。

このようにおなじみWordPressの画面がしっかりと表示されました!
これで任意のID/パスワードを設定して開発を開始可能です。

以上、最後までお読み頂きありがとうございました!

ブログ記事一覧へ