ディレクトリ構成
---docker
|--docker-compose.yml
|--docker
| |--nginx
| | |--Dockerfile
| | |--nginx.conf
| | |--conf.d
| | |--default.conf
| |
| |--phpfpm
| | |--Dockerfile
| | |--php.ini
| |
| |--mysql
| | |--Dockerfile
| | |--my.cnf
| |
| |--memcached
| |--Dockerfile
|
|--volumes
|--db
| |--data
|
|--logs
|--nginx
|--www
|--html
|--webcore
docker-compose.ym
間違ってたので修正中
nginx
:latestと:alpineの違い
:latest → bash/shが使用可能
:alpine → shのみ使用可能
Dockerfile
FROM nginx:alpine
conf.d/default.conf
mysql
Dockerfile
#イメージ指定
FROM mysql:5.7
my.cnf
[mysql]
default-character-set=utf8mb4
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
explicit_defaults_for_timestamp=1
default-time-zone=Asia/Tokyo
max_allowed_packet=32M
skip-symbolic-links=1
[client]
default-character-set=utf8mb4
phpfpm
Dockerfile
FROM php:7.3-fpm-alpine
RUN apk update \
&& apk add \
autoconf \
vim \
git \
zip \
gcc \
g++ \
make \
libmemcached-dev \
zlib-dev \
freetype-dev \
libjpeg-turbo-dev \
libpng-dev \
libmcrypt-dev \
postgresql-dev \
&& pecl install memcached \
&& docker-php-ext-install \
mbstring \
json \
exif \
mysqli \
pdo_mysql \
gd \
pgsql \
pdo_pgsql \
hash
php.ini
[Date]
date.timezone = "Asia/Tokyo"
[mbstring]
mbstring.internal_encoding = "UTF-8"
mbstring.language = "Japanese"
[extension]
enabled_dl = On
[memcached]
extension=memcached.so
php-fpm.conf
memcached
Dockerfile
FROM memcached:latest