108 lines
3.0 KiB
YAML
Raw Normal View History

2025-02-26 11:49:20 +08:00
version: "3.3"
services:
# mysql 容器
mysql:
container_name: crmeb_mysql_arm #指定容器名
# image: daocloud.io/library/mysql:5.7.5-m15 #M1芯片可以采用这个镜像
#docker pull mysql/mysql-server:latest
# image: mysql:8.0.33
image: mysql/mysql-server
platform: linux/arm64/v8
restart: always
ports:
- 3306:3306
# 环境变量
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: "root"
MYSQL_USER: 'crmeb'
MYSQL_PASSWORD: '123456'
MYSQL_DATABASE: 'crmeb'
# DOCKER_DEFAULT_PLATFORM: 'linux/amd64'
# 容器启动时自动分配一个ip地址
privileged: true
# 启动命令
command:
--character-set-server=utf8mb4
--sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
# 工作目录
working_dir: /var/lib/mysql
# 挂载配置文件
volumes:
- ./mysql/my.cnf:/etc/mysql/my.cnf #挂载配置文件到本地
- ./mysql/data:/var/lib/mysql/ #挂载数据目录到本地
- ./mysql/log:/var/log/mysql
networks:
app_net:
# 固定子网ip网段必须在子网络192.168.*.*
ipv4_address: 192.168.10.11
# redis 容器
redis:
container_name: crmeb_redis
image: 'redis:alpine'
ports:
- "6379:6379"
command: redis-server /usr/local/etc/redis/redis.conf
volumes:
# - ./redis/data:/data #挂载数据目录到本地
- ./redis/redis.conf:/usr/local/etc/redis/redis.conf
networks:
app_net:
ipv4_address: 192.168.10.10
# php 容器
phpfpm:
container_name: crmeb_php #指定容器名
image: crmeb_php #指定镜像名
build:
context: ./php #dockerfile文件路径
dockerfile: Dockerfile #制定dockerfile文件名称
restart: always
environment:
TZ: Asia/Shanghai
ports:
- 9000:9000
- 50002:50002
- 50003:50003
tmpfs: /var/temp #上传临时文件夹
working_dir: /var/www
volumes:
- ../../crmeb:/var/www #程序运行目录
- ../../crmeb/runtime:/var/www/temp #程序缓存目录
- ./php/php-ini-overrides.ini:/etc/php/7.4/fpm/conf.d/99-overrides.ini
networks:
app_net:
ipv4_address: 192.168.10.90
# command: /bin/bash -c "php -v"
# nginx 容器
nginx:
container_name: crmeb_nginx
image: 'nginx:alpine'
# image: daocloud.io/library/nginx:1.19.1-alpine
restart: always
ports:
- 8011:80
# - 443:443
# 依赖关系 先跑php
depends_on:
- phpfpm
environment:
TZ: Asia/Shanghai
working_dir: /var/www
volumes_from:
- phpfpm #继承phpfpm挂载目录
volumes:
- ./nginx/vhost.conf:/etc/nginx/conf.d/default.conf
- ./nginx/log:/etc/nginx/log
networks:
app_net:
ipv4_address: 192.168.10.80
networks: #网络配置
app_net: #网络名称
driver: bridge
ipam: #网络配置
driver: default
config:
- subnet: 192.168.10.0/24 #IP区间