version: "3"
services:
  dvadmin-web:
    container_name: dvadmin-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
    expose:
      - "8080"
    networks:
      network:
        ipv4_address: 177.8.0.11

  dvadmin-django:
    build:
      context: .
      dockerfile: ./docker_env/django/Dockerfile
    container_name: dvadmin-django
    working_dir: /backend
# 打开mysql 时,打开此选项
#    depends_on:
#      - dvadmin-mysql
    environment:
      PYTHONUNBUFFERED: 1
      DATABASE_HOST: dvadmin-mysql
      TZ: Asia/Shanghai
    volumes:
      - ./backend:/backend
      - ./logs/log:/var/log
    ports:
      - "8000:8000"
    expose:
      - "8000"
    restart: always
    networks:
      network:
        ipv4_address: 177.8.0.12

#  dvadmin-mysql:
#    image: mysql:5.7
#    container_name: dvadmin-mysql
#    #使用该参数,container内的root拥有真正的root权限,否则,container内的root只是外部的一个普通用户权限
#    #设置为true,不然数据卷可能挂载不了,启动不起
##    privileged: true
#    restart: always
#    ports:
#      - "3306:3306"
#    environment:
#      MYSQL_ROOT_PASSWORD: "123456"
#      MYSQL_DATABASE: "dvadmin_pro"
#      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.8.0.13


# 如果使用celery 插件,请自行打开此注释
#  dvadmin-celery:
#    build:
#      context: .
#      dockerfile: ./docker_env/celery/Dockerfile
#    # image: django:2.2
#    container_name: dvadmin-celery
#    working_dir: /backend
#    depends_on:
#      - dvadmin-mysql
#    environment:
#      PYTHONUNBUFFERED: 1
#      DATABASE_HOST: dvadmin-mysql
#      TZ: Asia/Shanghai
#    volumes:
#      - ./backend:/backend
#      - ./logs/log:/var/log
#    restart: always
#    networks:
#      network:
#        ipv4_address: 177.8.0.14

networks:
  network:
    ipam:
      driver: default
      config:
        - subnet: '177.8.0.0/16'