version : '3.8'
#networks:
#  cloud-net:
#    name: cloud-net
#    ipam:
#      config:
#        - subnet: 172.19.0.0/16
services:
  vctgo-nacos:
    container_name: vctgo-nacos
    image: nacos/nacos-server:2.1.1-slim
    build:
      context: ./nacos
    environment:
      - MODE=standalone
    volumes:
      - ./nacos/logs/:/home/nacos/logs
      - ./nacos/conf/application.properties:/home/nacos/conf/application.properties
    ports:
      - "8848:8848"
      - "9848:9848"
      - "9849:9849"
    depends_on:
      - vctgo-mysql
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.6
  vctgo-mysql:
    container_name: vctgo-mysql
    image: mysql:5.7
    build:
      context: ./mysql
    ports:
      - "3306:3306"
    volumes:
      - ./mysql/conf:/etc/mysql/conf.d
      - ./mysql/logs:/logs
      - ./mysql/data:/var/lib/mysql
      - ./mysql/db:/docker-entrypoint-initdb.d
    command: [
      'mysqld',
      '--innodb-buffer-pool-size=80M',
      '--character-set-server=utf8mb4',
      '--collation-server=utf8mb4_unicode_ci',
      '--default-time-zone=+8:00',
      '--lower-case-table-names=1'
    ]
    environment:
      MYSQL_DATABASE: 'vctgo_platform'
      MYSQL_ROOT_PASSWORD: GnWd2ee7M%jgpNG
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.2
  vctgo-redis:
    container_name: vctgo-redis
    image: redis
    build:
      context: ./redis
    ports:
      - "6379:6379"
    volumes:
      - ./redis/conf/redis.conf:/home/vctgo/redis/redis.conf
      - ./redis/data:/data
    command: redis-server /home/vctgo/redis/redis.conf
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.3
  vctgo-nginx:
    container_name: vctgo-nginx
    image: nginx
    build:
      context: ./nginx
    ports:
      - "80:80"
    volumes:
      - ./nginx/html/dist:/home/vctgo/projects/vctgo-ui
      - ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf
      - ./nginx/logs:/var/log/nginx
      - ./nginx/conf.d:/etc/nginx/conf.d
    depends_on:
      - vctgo-gateway
    links:
      - vctgo-gateway
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.4
  vctgo-gateway:
    container_name: vctgo-gateway
    build:
      context: vctgo/gateway
      dockerfile: dockerfile
    ports:
      - "38080:38080"
    depends_on:
      - vctgo-redis
    links:
      - vctgo-redis
#    environment:
#      - NACOS_HOST=172.19.0.6
#      - NACOS_PORT=8848
#      - NETWORK_IP=192.168.1.4
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.5
  vctgo-auth:
    container_name: vctgo-auth
    build:
      context: vctgo/auth
      dockerfile: dockerfile
    ports:
      - "39200:39200"
    depends_on:
      - vctgo-redis
    links:
      - vctgo-redis
#    environment:
#      - NACOS_HOST=172.19.0.6
#      - NACOS_PORT=8848
#      - NETWORK_IP=192.168.1.4
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.7
  vctgo-system:
    container_name: vctgo-system
    build:
      context: vctgo/modules/system
      dockerfile: dockerfile
    ports:
      - "39201:39201"
    depends_on:
      - vctgo-redis
      - vctgo-mysql
    links:
      - vctgo-redis
      - vctgo-mysql
      - vctgo-file
#    environment:
#      - NACOS_HOST=172.19.0.6
#      - NACOS_PORT=8848
#      - NETWORK_IP=192.168.1.4
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.8
  vctgo-gen:
    container_name: vctgo-gen
    build:
      context: vctgo/modules/gen
      dockerfile: dockerfile
    ports:
      - "39202:39202"
    depends_on:
      - vctgo-mysql
    links:
      - vctgo-mysql
#    environment:
#      - NACOS_HOST=172.19.0.6
#      - NACOS_PORT=8848
#      - NETWORK_IP=192.168.1.4
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.9
  vctgo-file:
    container_name: vctgo-file
    build:
      context: vctgo/modules/file
      dockerfile: dockerfile
    ports:
      - "39300:39300"
    volumes:
      - ./vctgo/uploadPath:/home/vctgo/uploadPath
#    environment:
#      - NACOS_HOST=172.19.0.6
#      - NACOS_PORT=8848
#      - NETWORK_IP=192.168.1.4
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.10
  vctgo-monitor:
    container_name: vctgo-monitor
    build:
      context: vctgo/visual/monitor
      dockerfile: dockerfile
    ports:
      - "39100:39100"
#    environment:
#      - NACOS_HOST=172.19.0.6
#      - NACOS_PORT=8848
#      - NETWORK_IP=192.168.1.4
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.11
  vctgo-demo:
    container_name: vctgo-demo
    build:
      context: vctgo/demo
      dockerfile: dockerfile
    ports:
      - "39203:39203"
    depends_on:
      - vctgo-redis
      - vctgo-mysql
    links:
      - vctgo-redis
      - vctgo-mysql
      - vctgo-file
#    environment:
#      - NACOS_HOST=172.19.0.6
#      - NACOS_PORT=8848
#      - NETWORK_IP=192.168.1.4
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.12
  vctgo-job:
    container_name: vctgo-job
    build:
      context: vctgo/modules/job
      dockerfile: dockerfile
    ports:
      - "39204:39204"
    depends_on:
      - vctgo-redis
      - vctgo-mysql
    links:
      - vctgo-redis
      - vctgo-mysql
      - vctgo-file
#    environment:
#      - NACOS_HOST=172.19.0.6
#      - NACOS_PORT=8848
#      - NETWORK_IP=192.168.1.4
#    networks:
#      cloud-net:
#        ipv4_address: 172.19.0.13
  jnrz-toy:
    container_name: jnrz-toy
    build:
      context: vctgo/modules/toy
      dockerfile: dockerfile
    ports:
      - "39210:39210"
    depends_on:
      - vctgo-redis
      - vctgo-mysql
    links:
      - vctgo-redis
      - vctgo-mysql
      - vctgo-file
    volumes:
      - /home/ecs-user/templates/toy:/home/ecs-user/templates/toy
  jnrz-book:
    container_name: jnrz-book
    build:
      context: vctgo/modules/book
      dockerfile: dockerfile
    ports:
      - "39220:39220"
    depends_on:
      - vctgo-redis
      - vctgo-mysql
    links:
      - vctgo-redis
      - vctgo-mysql
      - vctgo-file
    volumes:
      - /home/ecs-user/templates/book:/home/ecs-user/templates/book
  jnrz-activity:
    container_name: jnrz-activity
    build:
      context: vctgo/modules/activity
      dockerfile: dockerfile
    ports:
      - "39230:39230"
    depends_on:
      - vctgo-redis
      - vctgo-mysql
    links:
      - vctgo-redis
      - vctgo-mysql
      - vctgo-file
    volumes:
      - /home/ecs-user/templates/activity:/home/ecs-user/templates/activity