スポンサーリンク
最近は、Dockerを少しずつ勉強しているのですが、
そういえば、Docker でLAMP環境を作成していなかったので、
この機会に作成してみました。
docker-compose を使用すれば、すぐに作れます。
参考記事↓
参考記事のまんまですが、
docker
│ └── php
│ ├── Dockerfile
│ └── php.ini
├── docker-compose.yml
├── html
│ └── index.php
├── mysql
└── phpmyadmin
└── sessions
Code language: CSS (css)
こんな感じの構成になってます
用意するのは
docker-compose.yml
Dockerfile
php.ini
Code language: CSS (css)
だけです。
それ以外のファイルは、docker-compose up -d すれば、自動で作成してくれます。(htmlディレクトリでさえも!!)
自分の設定はこちら
docker-compose.yml
version: '3'
services:
php:
build:
context: ./docker/php
dockerfile: Dockerfile
volumes:
- .docker/php/php.ini:/usr/local/etc/php/php.ini
- ./html:/var/www/html
ports:
- 8010:80
links:
- mysql:mysql
mysql:
image: mysql:5.7
volumes:
- ./mysql:/var/lib/mysql
ports:
- 13306:3306
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=test
- MYSQL_USER=test
- MYSQL_PASSWORD=test
phpmyadmin:
image: phpmyadmin/phpmyadmin
environment:
- PMA_ARBITRARY=1
- PMA_HOST=mysql
- PMA_USER=test
- PMA_PASSWORD=test
links:
- mysql
ports:
- 4000:80
volumes:
- ./phpmyadmin/sessions:/sessions
Code language: JavaScript (javascript)
Dockerfile
FROM php:7.2-apache
RUN apt-get update && \
docker-php-ext-install pdo_mysql mysqli mbstring
Code language: JavaScript (javascript)
php.ini
[Date]
date.timezone = "Asia/Tokyo"
[mbstring]
mbstring.internal_encoding = "UTF-8"
mbstring.language = "Japanese"
Code language: JavaScript (javascript)
本当に5分もかからず、作成できていまいます…
vagrantだと、この何十倍も時間がかかるはず…
ブラウザ
localhost
34 Pockets
http://localhost:8010
phpMyAdmin
localhost
http://localhost:4000/index.php?lang=ja
こちらの教材で学習中↓