いちあおの日記

いちあおの日記です

Docker で WordPress の開発環境

Docker で WordPress の公式イメージを使って簡単に開発環境を作れるか試したんですが、うまい方法が見つかりませんでした。

でもけっこういい方法は見つかりました。

www.sitepoint.com

上の記事の方法だと docker-compose.ymlvolumes がなぜか機能しませんでした。 なぜか分からずあきらめました。

ほかの方法を探していたら下のような記事を見つけました。

qiita.com

シンボリックリンクを使った少し強引な方法ですが、これが一番よさそうでした。

プラグインやテーマ増やしたければ docker-compose.ymlvolumes を編集して、シンボリックリンクを追加すればいいです。

version: '2'
services:
  (略)
  wordpress:
    (略)
    volumes:
      - "./wp-content/plugins/dev-plugin:/usr/src/dev-plugin"
      - "./wp-content/themes/dev-theme:/usr/src/dev-theme"
    (略)
docker-compose up -d

docker-compose exec wordpress ln -s /usr/src/dev-plugin /var/www/html/wp-content/plugins/dev-plugin

docker-compose exec wordpress ln -s /usr/src/dev-theme /var/www/html/wp-content/themes/dev-theme

Docker をはじめて少し使ってみました

Docker を少しさわってみたので、基本的な使い方とコマンドについて簡単に書きます。

環境は Windows 10 (64bit) です。

Docker とは

アプリケーションの実行に必要なもの(OS、WEBサーバー、データベースとか)をまるごとまとめて簡単に管理できる便利ツールです。

設定をまとめたものを Docker イメージと呼びます。

Ubuntu 用イメージや MySQL 用イメージ、nginx 用イメージなどがあり、これらを組み合わせて Docker コンテナ を作成します。

Docker コンテナが独立したサーバー機能を実現します。

Docker Hub

Docker Hub にいろいろイメージがあります:https://hub.docker.com

準備

Windows なら公式サイトから Docker Tools をインストールします。

いちあおは DockerToolbox-1.12.2.exe という名前のインストールファイルでした。

Git や VirtualBox も一緒にインストールできますが、いらなければチェックを外しておきます。

Docker Quickstart Terminal からコンソールを起動します。

Docker を実行:

docker-machine ssh default

適当な ssh クライアントを使うと便利です:

  • ホスト名 : 192.168.99.100
  • ユーザー名 : docker
  • パスワード : tcuser

イメージ関連のコマンド

Docker イメージのダウンロード:

docker pull ubuntu:latest

latest の箇所はタグ名で、latest は最新バージョンを意味します。

タグ名を省略すると最新バージョンになります。

イメージの一覧:

docker images

イメージの情報:

docker inspect ubuntu

イメージの情報のうち OS の値を表示

docker inspect --format="{{ .Os }}" ubuntu

イメージの検索:

docker search ubuntu

スター 30 以上のイメージを検索:

docker search ubuntu --stars=30

イメージの削除:

docker rmi ubuntu

Docker Hub 関連のコマンド

Docker Hub にログイン:

docker login [サーバ名]

Docker Hub にアップロード:

docker push ユーザー名/イメージ名:[タグ名] [サーバ名]

Docker Hub からログアウト:

docker logout [サーバ名]

コンテナ関連のコマンド

コンテナ生成/起動の対話的実行:

docker run -it --name "test" ubuntu /bin/bash

"test" の箇所はコンテナ名です。

コマンドの引数のコンテナIDの代わりに使えます。

下記のようにすると exitbash から抜けても再起動がかかるようになります:

docker run -it --restart=always ubuntu /bin/bash

コンテナ生成/起動のバックグラウンド実行:

docker run -d ubuntu /bin/ping localhost  

このように -d オプションをつけるとバックグラウンドで実行されます。

ログの確認:

docker logs [コンテナID]

オプション -t をつけるとタイムスタンプも表示します。

稼働コンテナ一覧:

docker ps

オプション -a をつけると停止中のものも表示します。

オプション --format で出力形式を指定できます:

docker ps -a --format="table {{ .CreatedAt}}\t{{ .ID }}\t{{ .Image}}\t{{ .Status }}\t{{ .RunningFor }}"

コンテナの稼働確認:

docker stats [コンテナID]

コンテナの中断:

docker pause [コンテナID]

コンテナの再開:

docker restart [コンテナID]

コンテナ再起動:

docker restart [コンテナID]

コンテナ停止:

docker stop [コンテナID]

コンテナ起動:

docker start [コンテナID]

コンテナ削除:

docker rm [コンテナID]

コンテナ一括削除:

docker rm $(docker ps -a -q)

コンテナ一括削除(起動中のも):

docker rm -f $(docker ps -a -q)

コンテナの名前変更:

docker rename [変更前コンテナ名] [変更後コンテナ名]

Docker Content Trust (DCT)

第三者からのなりすまし、改ざんを防ぐための機能です。

デフォルトでは無効です。

DCT の有効化:

export DOCKER_CONTENT_TRUST=1

DCT の無効化:

export DOCKER_CONTENT_TRUST=0

一時的に無効/有効化することもできます:

docker pull --disable-content-trust=false ubuntu:latest
docker pull --disable-content-trust ubuntu:latest

つづく..._〆(≡q )

帰宅した途端に出来たての白菜鍋

今日は白菜の鍋を作りました。

 

材料は、

しめじ、えのき、白菜1/4、人参1.5本、たまねぎ、豚肉。

白菜鍋スープ。

 

急いで作れば10分くらいで完成します。

 

f:id:iti_ao:20161107224726j:plain

 

家についてから荷物など背負ったまま、

イヤホンもつけたままの音楽聞いたままでクッキングをして、

完成したら荷物などの装備を解除すると、

家についた途端に、

出来たての料理が完成している感覚になるのでおすすめです。

東京

昨日は学生の時の後輩の人たちと東京に行ってきました。

 

六本木で合流して、すぐに東京駅へ向かい喫茶店でおやつを食べました。

その後、KITTE でたまたま見つけた IMT という展示に行ってきました。

動物の剥製や虫の標本、造船資料、雲の研究資料などいろいろありました。

matome.naver.jp

 

博物館の後は、有楽町まで歩いて、まんぷく食堂で夜ごはんを食べました。

 

tabelog.com

 

スペアリブがおいしかったです。

サイダーを飲んだあとにラムネを頼みましたが、サイダーとラムネは中身が全くいっしょのものだということを思い出して意味のないことをしてしまったと思いました。

 

f:id:iti_ao:20161107093051j:plain

日記はじめました

勇者いちあおのブログへようこそ。

 

今日から日記を書こうと思います。

 

今日は排水管の清掃がありました。

思っていたよりとても早く終わりました。

 

明日はピアノのレッスンがあります。

今日はたくさん練習したいと思います。