119 lines
3.0 KiB
YAML
119 lines
3.0 KiB
YAML
version: "3"
|
||
services:
|
||
dvadmin3-web:
|
||
container_name: dvadmin3-web
|
||
ports:
|
||
- "8080:8080"
|
||
build:
|
||
context: ./
|
||
dockerfile: ./docker_env/web/Dockerfile
|
||
environment:
|
||
TZ: Asia/Shanghai
|
||
volumes:
|
||
- ./docker_env/nginx/my.conf:/etc/nginx/conf.d/my.conf
|
||
- ./backend/media:/backend/media
|
||
expose:
|
||
- "8080"
|
||
restart: always
|
||
networks:
|
||
network:
|
||
ipv4_address: 177.10.0.11
|
||
|
||
dvadmin3-django:
|
||
build:
|
||
context: .
|
||
dockerfile: ./docker_env/django/Dockerfile
|
||
container_name: dvadmin3-django
|
||
working_dir: /backend
|
||
depends_on:
|
||
- dvadmin3-mysql
|
||
environment:
|
||
PYTHONUNBUFFERED: 1
|
||
DATABASE_HOST: dvadmin3-mysql
|
||
TZ: Asia/Shanghai
|
||
volumes:
|
||
- ./backend:/backend
|
||
- ./logs/log:/var/log
|
||
ports:
|
||
- "8000:8000"
|
||
expose:
|
||
- "8000"
|
||
restart: always
|
||
networks:
|
||
network:
|
||
ipv4_address: 177.10.0.12
|
||
|
||
dvadmin3-mysql:
|
||
image: mysql:8.0
|
||
container_name: dvadmin3-mysql
|
||
privileged: true
|
||
restart: always
|
||
ports:
|
||
- "3306:3306"
|
||
environment:
|
||
MYSQL_ROOT_PASSWORD: ${MYSQL_PASSWORD}
|
||
MYSQL_DATABASE: "django-vue3-admin"
|
||
TZ: Asia/Shanghai
|
||
command:
|
||
--wait_timeout=31536000
|
||
--interactive_timeout=31536000
|
||
--max_connections=1000
|
||
--default-authentication-plugin=mysql_native_password
|
||
volumes:
|
||
- "./docker_env/mysql/data:/var/lib/mysql"
|
||
- "./docker_env/mysql/conf.d:/etc/mysql/conf.d"
|
||
- "./docker_env/mysql/logs:/logs"
|
||
networks:
|
||
network:
|
||
ipv4_address: 177.10.0.13
|
||
|
||
|
||
dvadmin3-celery:
|
||
build:
|
||
context: .
|
||
dockerfile: ./docker_env/celery/Dockerfile
|
||
container_name: dvadmin3-celery
|
||
working_dir: /backend
|
||
depends_on:
|
||
- dvadmin3-mysql
|
||
environment:
|
||
PYTHONUNBUFFERED: 1
|
||
DATABASE_HOST: dvadmin3-mysql
|
||
TZ: Asia/Shanghai
|
||
volumes:
|
||
- ./backend:/backend
|
||
- ./logs/log:/var/log
|
||
restart: always
|
||
networks:
|
||
network:
|
||
ipv4_address: 177.10.0.14
|
||
|
||
|
||
dvadmin3-redis:
|
||
image: redis:6.2.6-alpine # 指定服务镜像,最好是与之前下载的redis配置文件保持一致
|
||
container_name: dvadmin3-redis # 容器名称
|
||
restart: always
|
||
environment:
|
||
- TZ=Asia/Shanghai # 设置时区
|
||
volumes: # 配置数据卷
|
||
- ./docker_env/redis/data:/data
|
||
- ./docker_env/redis/redis.conf:/etc/redis/redis.conf
|
||
ports: # 映射端口
|
||
- "6379:6379"
|
||
sysctls: # 设置容器中的内核参数
|
||
- net.core.somaxconn=1024
|
||
command: /bin/sh -c "echo 'vm.overcommit_memory = 1' >> /etc/sysctl.conf && redis-server /etc/redis/redis.conf --appendonly yes --requirepass ${REDIS_PASSWORD}" # 指定配置文件并开启持久化
|
||
privileged: true # 使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限
|
||
networks:
|
||
network:
|
||
ipv4_address: 177.10.0.15
|
||
|
||
|
||
networks:
|
||
network:
|
||
ipam:
|
||
driver: default
|
||
config:
|
||
- subnet: '177.10.0.0/16'
|
||
|