竹の子エンジニア

30代から目指すエンジニアの日記

Dockerを使ってWordPress環境の構築。

どうこもんにちは。(修正なし)

タイトルのとおりなんですが、備忘録です。
ちなみにDockerについては、一回だけ作っただけの
初心者です。

今回CentOS 7.1(WindowsVirtualBox上)にDockerと
Docker composeをインストールしてWordPress環境を構築してみます。
SELinuxを有効にしているとエラーが頻発するので、無効に。

Dockerに関しての説明は省くとして、
Docker composeは、複数のコンテナで実現されているサービスを
構築・実行する手順を自動的にする機能らしいです。

今回のWordpressとかだと、WordpressコンテナとMariaDBコンテナを
作成するとして、Docker Composeを使えば、設定ファイル(yml)を記述して
コマンドを実行するだけで、設定情報にそってサービスの作成と起動と連携を
一括で管理してくれるものらしいです。

やったこと。

Dockerのインストール

CentOS環境にDockerをインストールします
rootユーザー環境で実行しています。

# yum -y install docker

dockerの起動と、自動起動の有効化

# systemctl start docker
# systemctl enable docker

docker composeのインストール

docker composeの最新版に関しては、以下を参照ください。 最新Releaseのインストール方法についても書いてあります。 github.com

# curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#chmod +x /usr/local/bin/docker-compose

docker composeのインストール確認

上記コマンド実行後、以下を入力します。

# docker-compose -version
docker-compose version 1.23.1, build b02f1306

WordPressの構成ファイル作成

WordPressをDockerで動作させるための構成ファイルを 任意のディレクトリに作成します。(私の場合、/usr/local/wordpress/以下)

クイックスタート・ガイド:Docker Compose と Wordpress — Docker-docs-ja 17.06.Beta ドキュメントhttp://docs.docker.jp/compose/wordpress.htmldocs.docker.jp

上記サイトにもありますが、以下の感じでymlファイルを作成

version: '2'
services:
  db:
    image: mysql:5.7
    volumes:
      - "./.data/db:/var/lib/mysql"
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: wordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    links:
      - db
    ports:
      - "8000:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_PASSWORD: wordpress

プロジェクトの構築

上記、ymlファイルができたら以下のコマンドで 環境を構築します。

# docker-compose up

コマンド実行後、ブラウザでhttp://localhost:8000と入力すると WordPressの実行画面が表示されました。

ひとまずここまで。