version: "3.7" x-userdata-volume: &userdata-volume type: bind source: ${USERDATA_DIRECTORY} target: /userdata x-comics-volume: &comics-volume type: bind source: ${COMICS_DIRECTORY} target: /comics services: threetwo: build: context: https://github.com/rishighan/threetwo.git dockerfile: Dockerfile image: frishi/threetwo container_name: threetwo-ui restart: unless-stopped ports: - "8050:8050" - "3050:3050" # links: # - importapi depends_on: - db - elasticsearch - redis networks: - proxy # comicvineapi: # build: # context: https://github.com/rishighan/threetwo-metadata-service.git # image: frishi/threetwo-metadata-service # container_name: comicvine-api # ports: # - "3080:3080" # volumes: # - *comics-volume # - *userdata-volume # environment: # SERVICES: api # env_file: docker-compose.env # depends_on: # - redis # networks: # - proxy comicvine: build: context: https://github.com/rishighan/threetwo-metadata-service.git image: frishi/threetwo-metadata-service container_name: comicvine-service ports: - "3080:3080" environment: SERVICES: api,comicvine env_file: docker-compose.env depends_on: - redis volumes: - *comics-volume - *userdata-volume networks: - proxy # importapi: # build: # context: https://github.com/rishighan/threetwo-core-service.git # image: frishi/threetwo-core-service # container_name: importapi # ports: # - "3000:3000" # - "3001:3001" # environment: # SERVICES: api # env_file: docker-compose.env # volumes: # - *comics-volume # - *userdata-volume # depends_on: # - redis # - db # - elasticsearch # networks: # - proxy core-services: build: context: https://github.com/rishighan/threetwo-core-service.git image: frishi/threetwo-core-service container_name: core-services depends_on: - db - redis - elasticsearch ports: - "3000:3000" - "3001:3001" environment: name: core-services SERVICES: api,library,queue,settings,search,imagetransformation env_file: docker-compose.env volumes: - *comics-volume - *userdata-volume networks: - proxy db: image: "bitnami/mongodb:latest" container_name: database networks: - proxy ports: - "27017:27017" volumes: - "mongodb_data:/bitnami/mongodb" redis: image: "bitnami/redis:latest" container_name: queue environment: ALLOW_EMPTY_PASSWORD: "yes" networks: - proxy ports: - "6379:6379" elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.16.2 container_name: elasticsearch environment: - "discovery.type=single-node" - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - "xpack.security.enabled=true" - "xpack.security.authc.api_key.enabled=true" - "ELASTIC_PASSWORD=password" ulimits: memlock: soft: -1 hard: -1 ports: - 9200:9200 networks: proxy: external: true volumes: mongodb_data: driver: local elasticsearch: driver: local