今までは Vagrant を 使っていたのですが
Docker も サクッと 使えないと良くないな ってことで 勉強がてら 使い始めるとします

それにしても 前回 使ったのは 1年も 前の話なのですね…

Docker で 開発環境 の ベースを 作ってみた (4)
https://tekuaru.jack-russell.jp/2018/01/17/1581/

備忘録 サボりすぎです…


Docker の 使い方 (おさらい)


前回から だいぶ立ってしまったので
おさらいも兼ねて 1から セットアップしてみます


Docker の インストール


まずは Docker の サイトですね
なんか 前見たときよりも おしゃれになっている気がします

Docker
https://www.docker.com/

ダウンロード先は Products から Docker Desktop を 選んで Download for XXX を 選びます

僕の環境は Mac なので 以下のURL に 飛びます

Docker Desktop for Mac
https://hub.docker.com/editions/community/docker-ce-desktop-mac

ページを見ると Please Login To Download と 書かれているので ダウンロードするのには ユーザ登録が 必須になったみたいですね

というわけで サクッと ユーザ登録します
Docker ID には 大文字 や ハイフン や アンダーバー が 使えないので ちょっと 悩みました…

ログイン後は ダウンロードして dmgを開いて ドラッグ&ドロップ して アプリケーション内に コピーします

アプリケーション内から Docker を 開きます
初回は コンピュータのパスワードが 求められるかと思います

ネットワークコンポーネントをインストールするための特権アクセスとDockerアプリへのリンクが必要です。

メニューバー に Dockerアイコンが表示されて 荷物の積み込み中のアニメーションから 荷物が 積み込まれた後のアイコンに変わったら セットアップの完了です


WordPress を 動かしてみる


少し調べていたら WordPress 環境を作るための ドキュメントが 公式にありました
いたれりつくせりですね!!

Quickstart: Compose and WordPress
https://docs.docker.com/compose/wordpress/

というわけで こちらに沿って 作業していきます

まずは 適当なディレクトリを 作成します
僕は 更に そこに docker という ディレクトリを作りました

そこに docker-compose.yml を 作成して ドキュメントの内容を コピペします

最後に ターミナルで 作成したディレクトリに移動して docker-compose up -d します

さくっと http://localhost:8000/ で 確認できました

確認できたので docker-compose down --volumes で コンテナを停止します

ここまでは 前回もやった気がします
むしろ カスタマイズ までやった気がします


Vagrant と 同じ環境を作ってみる


Vagrant では MariaDB 10.3 を 使っているので カスタマイズしてみようと思います

といっても すごく簡単で docker-compose.yml の db の image: mysql:5.7 を image: mariadb:10.3 に 変えるだけです

後は DB の ボリュームを 同ディレクトリ の db ディレクトリに出力したり 少々 手を加えてみました

version: '3.3'

services:
   db:
     image: mariadb:10.3
     volumes:
       - ./db:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     volumes:
       - ../html/wordpress/wp-content/plugins:/var/www/html/wp-content/plugins
       - ../html/wordpress/wp-content/themes:/var/www/html/wp-content/themes
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress

感想


いろいろ ゴミデータが 貯まるので 避けていたのですが いろいろ改善されているみたいで
ちょっと 使ってみるかな?? っていう 気に 変わったのです

Docker 軽量で サクッと 環境が作れるのが良いですね〜

今後は vagrant-hostsupdater みたいな hosts で ローカルドメインを 振れるような方法を 調べたいと 思っています

Related Article

Gutenberg の カスタムブロック を 作ってみる

詳細へ »

Docker で 開発環境 の ベースを 作ってみた (4)

詳細へ »

Docker で 開発環境 の ベースを 作ってみた (3)

詳細へ »