使用 Windows 10 (Hyper-V) 在 Docker 中构建运行 WordPress 的环境

我想在 Windows 10 上使用 Docker 构建 WordPress 运行环境。
Docker for Windows 使用 Hyper-V 虚拟机。
只有 Windows 10 64位专业版及以上才能使用 Hyper-V。

环境Windows 10 专业版 64 位操作系统
适用于 Windows 的 Docker

安装Docker for Windows从以下网站下载并安装Docker for Windows。

建议安装稳定版。
在安装 Docker for Windows 时,会自动启用 Hyper-V,因此无需采取任何特殊操作。需要在安装过程中重新启动 Windows。

确认MobyLinuxVM请确认已创建了Docker使用的虚拟机MobyLinuxVM。
打开控制面板管理工具,并打开Hyper-V管理器。
在Hyper-V管理器中确认MobyLinuxVM已显示并正在运行。

undefined

查看Docker的版本我們將在命令提示符中執行以下操作。

> docker version

请确认客户端和服务器的版本,以及服务器的操作系统/架构是否显示为Linux。

Client:
 Version:      1.13.0
 API version:  1.25
 Go version:   go1.7.3
 Git commit:   49bf474
 Built:        Wed Jan 18 16:20:26 2017
 OS/Arch:      windows/amd64

Server:
 Version:      1.13.0
 API version:  1.25 (minimum version 1.12)
 Go version:   go1.7.3
 Git commit:   49bf474
 Built:        Wed Jan 18 16:20:26 2017
 OS/Arch:      linux/amd64
 Experimental: true

如果您的 Linux 没有切换好,可以右键单击任务栏上显示的 Docker 图标,选择切换到 Linux 容器…。
如果服务器的操作系统/架构不是 Linux,则会出现以下错误。

docker: image operating system "linux" cannot be used on this platform.

共享驱动的分配タスクトレイに表示されるDockerアイコンを右クリックし、Setting… を選択します。

012201.PNG从共享驱动器中,事先选择要在Docker中使用的驱动器。

undefined

安装 Docker Compose。下記サイトより docker-compose-Windows-x86_64.exe をダウンロードし、実行します。

WordPress コンテナの作成
wordpress 用の適当なフォルダを作成します。

D:\Docker\my_wordpress

そのフォルダ配下に docker-compose.yml というファイルを作成します。
テキストエディタで以下の内容をコピーします。

version: '2.1'

services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/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
    ports:
      - "8000:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_PASSWORD: wordpress

volumes:
  db_data:

在命令提示符中执行以下操作。

> cd D:\Docker\my_wordpress
> docker-compose up -d

docker-compose の -d オプションはバックグラウンドで実行するという意味です。

Creating network "mywordpress_default" with the default driver
Creating volume "mywordpress_db_data" with default driver
Pulling db (mysql:5.7)...
5.7: Pulling from library/mysql
5040bd298390: Already exists
55370df68315: Pull complete
fad5195d69cc: Pull complete
a1034a5fbbfc: Pull complete
84bedc72ed3a: Pull complete
10981627b57d: Pull complete
0eb1485c660d: Pull complete
e3ee110bb981: Pull complete
01dd88d2ce4f: Pull complete
a08baf9a1c89: Pull complete
2f844a59fb03: Pull complete
Digest: sha256:79690dd87d68fd4d801e65f5479f8865d572a6c7ac073c9273713a9c633022c5
Status: Downloaded newer image for mysql:5.7
Creating mywordpress_db_1
Creating mywordpress_wordpress_1

确认 WordPress 容器
通过命令提示符执行以下操作。

> docker ps

MySQL と WordPress のコンテナが実行されていることを確認します。

CONTAINER ID        IMAGE               COMMAND                  CREATED                  STATUS              PORTS                  NAMES
beb0dee84683        wordpress:latest    "docker-entrypoint..."   Less than a second ago   Up About an hour    0.0.0.0:8000->80/tcp   mywordpress_wordpress_1
326633e3e057        mysql:5.7           "docker-entrypoint..."   Less than a second ago   Up About an hour    3306/tcp               mywordpress_db_1

请在浏览器中确认。以下のアドレスに移動し、Wordpress の画面が表示されればOK。

undefined

总结Docker for Windows が昨年夏ごろ正式リリースされたばかりということもあって、
2017年1月現時点では、Windows 10、Hyper-V 上での Docker は情報収集という面において困難なのは事実です。
ですが、VirtualBox から Windows 標準の Hyper-V をネイティブサポートした Docker は
非常に軽快に動作し、Windows ユーザーにとってパフォーマンス面で魅力的なコンテナ型仮想環境です。

[仅供参考]https://docs.docker.com/docker-for-windows/ 可以用 Docker for Windows 网址查看。
https://docs.docker.com/compose/wordpress/ 可以用 Docker Compose 和 WordPress 网址查看。

添加外部网络到Hyper-V。从控制面板的管理工具中打开Hyper-V管理器。
选择虚拟交换机管理器。
创建一个外部虚拟交换机以供新的虚拟网络交换机使用。可以随意给它命名。

undefined选择 Hyper-V 管理器中的 MobyLinuxVM 的设置。选择添加硬件,选择并添加网络。选择先前创建的外部虚拟交换机到虚拟交换机上。Docker 容器将能够访问外部网络。

[Kitematic的安装]Docker の GUI ツール Kitematic をインストールします。
タスクトレイに表示される Docker アイコンを右クリックし、Kitematic をダウンロードします。
下記フォルダに解凍、配置します。

C:\Program Files\Docker\Kitematic

右键点击显示在任务栏的Docker图标,选择”打开Kitematic…”来启动。

undefined

bannerAds