インストール後に行ったこと。

設定やアプリはモチロンlinux上にありますがwordpressのファイルなんかはWindows上においてファイルのコピーなんかでテーマをガシガシ書きたいとおもっていました。

いちいちFTPでアップロードも面倒ですし;

イロイロなサイトを見ているとローカルドライブの共有が出来そう。

まずはここでCドライブなどの共有をおこないます。

docker-compose.yml ファイルの構築とかインストールとか。

ymlファイルをおいたフォルダにて

docker-compose buildとか docker-compose up -dを行うことでイメージファイルなんかを作るわけですが今回の目的をもう一度

・Apache ・PHP ・mySQL ・phpMyAdmin

フォルダとしては

Docker ---- db ---- mySQL_data :SQLデータベース(Docker消してもデータベースが消えないように)
             ---- html ---- wordpress:このhtmlファルダに顧客毎のwordPressを導入します。

基本こんな感じで

設定ファイルはDocker--db:mySQLのDockerfile。
                                        --web:PHP関連のDockerfileを置いています。

docker-compose.yml

version: '2'
services:
  mysql:
    image: mysql
    build: ./db
    volumes:
      - ./db/mysql_data:/var/lib/mysql
    ports:
      - '3306:3306'
    environment:
      MYSQL_ROOT_PASSWORD: 'password'
  web:
    build: ./web
    ports:
      - '8000:80'
    volumes:
      - ./html:/var/www/html
    links:
      - mysql:mysql
  phpmyadmin:
      image: phpmyadmin/phpmyadmin:latest
      environment:
        PMA_ARBITRARY: 1
        PMA_HOST: mysql
        PMA_USER: root
        PMA_PASSWORD: password
      links:
        - mysql:mysql
      ports:
        - 8080:80
      volumes:
        - mysql-data:/path/to/data
volumes:
  mysql-data:
    driver: local

web\Dockerfile

FROM php:7.1-apache
MAINTAINER docker-web

RUN apt-get update \
    && apt-get -y install vim wget lsb-release libicu-dev mysql-client libfreetype6-dev libjpeg62-turbo-dev \
    && docker-php-ext-install pdo_mysql mysqli intl gd
RUN ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load
RUN ln -s /etc/apache2/mods-available/vhost_alias.load /etc/apache2/mods-enabled
RUN echo ServerName $HOSTNAME > /etc/apache2/conf-available/fqdn.conf && a2enconf fqdn

COPY ./base.conf /etc/apache2/sites-available/base.conf
RUN a2ensite base.conf

COPY ./php.ini /usr/local/etc/php/

web\php.ini

[Date]
date.timezone = "Asia/Tokyo"
[mbstring]
mbstring.internal_encoding = "UTF-8"
mbstring.language = "Japanese"

web\base.conf

<VirtualHost *:80>
    ServerName localhost
    ServerAlias *.*.localhost
    VirtualDocumentRoot "/var/www/html/%2/%1"
</VirtualHost>

<VirtualHost *:80>
    ServerName localhost
    ServerAlias *.localhost
    VirtualDocumentRoot "/var/www/html/%1"
</VirtualHost>

db/Dockerfile

FROM mysql:5.7
MAINTAINER docker-db

COPY ./my.cnf /etc/mysql/conf.d/my.cnf

db/my.cnf

[mysqld]
character-set-server=utf8
datadir = /var/lib/mysql

あとはhtmlフォルダを作ります。

power shellにてdocker-compose.ymlがあるフォルダに移動し、ビルドを行います。

docker-compose build

んでもって

docker-compose up -d

にてマウントという感じでしょうか。

Docker for windows(1)

Docker for windows(2)

Docker for windows(3)