わからんなりにまとめてみる系の独り言。
docker-compose.ymlを使っての、
LAMP環境構築は次回行う予定です。
TL;DR
Docker for Macをインストール、
Kitematic(GUI)を使って既存イメージからPHP7系インストール済みWebサーバー(Apache)を立ち上げてみました。
Docker for Macを使ってみる
【インストール】
Docker for Macのインストール
コマンドでも出来るけどこっちの方が必要なコマンドをまとめてインストール出来る。
https://store.docker.com/editions/community/docker-ce-desktop-mac
Windows版もある(この記事を見る限り、VMを噛ましている気がする)
https://store.docker.com/editions/community/docker-ce-desktop-windows
インストールしたアプリを起動したらterminalで確認
$ docker -v
Docker version 18.09.2, build 6247962
$ docker-compose -v
docker-compose version 1.23.2, build 1110ad01
※注意※
Docker for Macを閉じたらDockerコマンドは使用できなくなります。
Kitematicで登録済みのDockerコンテナも停止します。
Kitematicのインストール
GUIからDockerイメージをDL→コンテナを立ち上げることができるツール。
必須ではないが、とりあえず動かしてみたい場合には便利。
- Docker for Macを起動
- メニューよりKitematicを選択
- 初回の場合はインストールをしてくれとのアラートが出る
- hereをクリックするとDL開始
あとはDLされたzipを解凍して、出現するアプリケーションをApplicationsフォルダに突っ込む。
【Kitematic経由でコンテナを立ち上げる】
今回立ち上げてみるイメージ
tplatform/apache-php
https://hub.docker.com/r/tplatform/apache-php/
※注意※
- Kitematic経由はネット(DockerHub)上のイメージを直接参照してしているので、ローカルにはDockerfileが保存されない。
- ローカルのファイルと連携させたい場合は、使いたいイメージにVolumesが定義されていないと設定できない(なんだかんだで使いたい設定作るにはDocker-CLIの理解やdocker-composeの理解が必要。参考。)
基本的な手順
- Newをクリックして使いたいイメージをggる
- タグ指定がある場合は「・・・」をクリック、SELECTED TAGを選択してタグを指定する
- Createをクリック
- Settingsを修正する
- ローカルファイルとリンクさせたい場合、Volumesを選択。使用したいローカルファイルを設定する。
- Restartさせる
しばらくたってindex.phpが表示されたら成功。
<?php
phpinfo();
Terminalで以下のコマンドを入力すると実際に動いているのが確認できる。
$ docker stats
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
d64c1cb5651a apache-php 0.01% 42.25MiB / 1.952GiB 2.11% 10.7MB / 117kB 131kB / 43.7MB 29
【参考記事】
まとめ
DB使わない素PHPだけ(そんな場面基本ない)ならこれで動きます。
が、普通に使うにはdocker-compose.ymlを作ってMySQL・PHPMyAdmin用コンテナ立ち上げる必要があります。。。