文件目錄
/home/project/
├── docker-compose.yml
├── mysql
│ ├── conf
│ │ └── my.cnf
│ ├── data
│ ├── init.sql
│ ├── logs
│ │ ├── error.log
│ │ └── general.log
│ └── privileges.sql
├── nginx
│ ├── conf.d
│ │ └── web.conf
│ ├── log
│ │ ├── access.log
│ │ └── error.log
│ ├── mime.types
│ ├── nginx.conf
│ ├── nginx.dockerfile
│ ├── ssl
│ └── users
├── php
│ ├── local.ini
│ └── www.log.slow
└── www
│ ├── php.dockerfile
│ └── 項目的web
docker-compose.yml
version: "3.7"
services:
php:
build:
context: $PWD
dockerfile: ./www/php.dockerfile
image: php7.3.3-fpm
container_name: web_php
restart: unless-stopped
tty: true
environment:
SREVICE_TAG: prod
SERVICE_NAME: php
volumes:
- /etc/localtime:/etc/localtime
- $PWD/www:/var/www/html/web
- $PWD/php/local.ini:/usr/local/etc/php/cond.d/local.ini
working_dir: /var/www/html/web
networks:
- web_net
nginx:
build:
context: $PWD
dockerfile: ./nginx/nginx.dockerfile
image: nginx:1.15.8
container_name: web_nginx
restart: unless-stopped
tty: true
ports:
- 80:80
working_dir: /var/www/html/web
volumes:
- /etc/localtime:/etc/localtime
- $PWD/nginx/users:/etc/nginx/users
- $PWD/nginx/nginx.conf:/etc/nginx/nginx.conf
- $PWD/nginx/conf.d/web.conf:/etc/nginx/conf.d/web.conf
- $PWD/nginx/log:/var/log/nginx
- $PWD/www:/var/www/html/web
networks:
- web_net
depends_on:
- php
mysql:
image: mysql:5.7.25
container_name: web_mysql
restart: unless-stopped
volumes:
- /etc/localtime:/etc/localtime
- $PWD/mysql/data:/var/lib/mysql
- $PWD/mysql/conf/my.cnf:/etc/mysql/my.cnf
- $PWD/mysql/init.sql:/docker-entrypoint-initdb.d/init.sql:ro
- $PWD/mysql/privileges.sql:/docker-entrypoint-initdb.d/privileges.sql:ro
networks:
- web_net
environment:
MYSQL_ROOT_PASSWORD: <root 用戶密碼>
MYSQL_USER: <userA>
MYSQL_PASSWORD: <userA 的密碼>
MYSQL_DATABASE: <新增數據庫>
networks:
web_net:
driver: bridge
external:
name: web_net
執行 docker-compose.yml
docker-compose up -d