Docker pull commit push Dockerfile WordPress環境をつくる~Docker Compose~

Docker pull commit push Dockerfile WordPress環境をつくるでは、一つのコンテナーにApache、MySQLをインストールする形式でしたが、Docker Composeを利用すると、ApacheとMySQLのコンテナーをそれぞれ作成し、連携することが簡単に行えます。

中小規模のコンテナーシステムにおいて、WEB、APP、DB等の役割に分けてコンテナーを作成する場合に便利なので、WordPressコンテナーとMySQLコンテナーを分けて、連携するDocker Composeの入門をやってみたいと思います。

Docker pull commit push Dockerfile WordPress環境をつくるの続きですので、virtualboxの環境は以下同じです。

環境:VMWarePlayer or VirtualBoxの仮想マシン上にCentOS7.1を初期インストール

Dockerのインストール

1.Dockerのインストール

コマンド
# yum -y install docker

yumでDockerをインストールする場合は、OSのディストリビューションのリポジトリにあるDockerの最新のバージョンとなります。

最新のDockerをインストールする場合は、以下のコマンドを実行。

コマンド
# curl -fsSL https://get.docker.com/ | sh

2.Dockerの自動起動設定及びサービスの起動

コマンド
# systemctl enable docker.service
# systemctl start docker.service

3.Dockerのバージョンを確認

コマンド
# docker version

Docker Composeのインストール

1.Docker Composeのインストール

コマンド
# curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

ダウンロードしたバイナリに対して実行権限を追加します。

コマンド
# chmod +x /usr/local/bin/docker-compose

Docker Composeのバージョンを確認して、インストールができたことを確認してみます。

コマンド
# docker-compose -v
docker-compose version 1.9.0, build 2585387

docker-compose.ymlファイルの作成

1.docker-compose.ymlファイルの作成

コマンド
# vim docker-compose.yml
ファイル内容は事項参照
:wq
docker-compose.yml
version: "2"
services:
    wordpress:
        image: wordpress:latest
        ports:
            - "8080:80"
        depends_on:
            - db
        environment:
            WORDPRESS_DB_HOST: "db:3306"
        env_file: .env
    db:
        image: mysql:latest
        env_file: .env
        volumes:
            - db-data:/var/lib/mysql

volumes:
    db-data:
        driver: local

docker-compose.ymlの詳細は、こちら!!

2..envファイルの作成

WordPressとMySQLは公式のイメージを使用します。WordPressとMySQLのDB設定は、.envファイルを作成して、読み込むようにします。

コマンド
# vim docker-compose.yml
ファイル内容は事項参照
:wq
.env
WORDPRESS_DB_NAME=wordpress
WORDPRESS_DB_USER=wordpress
WORDPRESS_DB_PASSWORD=wppass
MYSQL_RANDOM_ROOT_PASSWORD=yes
MYSQL_DATABASE=wordpress
MYSQL_USER=wordpress
MYSQL_PASSWORD=wppass

WordPressコンテナーとMySQLコンテナーの起動

1.WordpressコンテナーとMySQLコンテナーの起動

-dオプションを付けてコンテナーをバックグラウンドでの起動する必要があります。

コマンド
# docker-compose up -d

http://VirtualBoxのIPアドレス:8080/」にアクセスし、WordPressの管理画面が表示されることを確認します。

2.主なdocker-composeコマンド

主なdocker-composeコマンドは以下となります。

コマンド 説明
up コンテナーの生成/起動
down 全てのコンテナーの停止と同時削除
scale 生成するコンテナー数の指定
ps コンテナーの一覧表示
logs コンテナーログの出力
run コンテナーの実行
start コンテナーの起動
stop コンテナーの停止
restart コンテナーの再起動
kill 実行中コンテナーの強制停止
rm コンテナーの削除

docker-composeコマンドの詳細は、こちら!!

参考サイト

[紹介元] WordPressタグが付けられた新着投稿 – Qiita Docker pull commit push Dockerfile WordPress環境をつくる~Docker Compose~

関連記事