version: "3.1" services: app: # Use region specific image : PROD-AU or PROD-UK image: index.docker.io/gentrackio/gateway: hostname: app1 container_name: gateway_app volumes: - GatewayConfig:/app/config:ro - GatewayData:/data:rw ports: - 443:3000 expose: - 3000 environment: - MESSAGE_QUEUE=amqp://rabbitmq:rabbitmq@mq - MESSAGE_STORE=redis://redis:6379 - VAULT_ADDR=https://vault:8200 # This line is required if using a self signed certificate in vault (the value of true or false doesn't matter) - VAULT_SKIP_VERIFY=true # This line is required if using a self signed certificate in Core systems # - NODE_TLS_REJECT_UNAUTHORIZED=0 # Override minimal TLS version. Allowed values are 'TLSv1.1' or 'TLSv1'. # The default minimal version is TLSv1.2. # - TLS_MIN_VERSION= # Override default TLS ciphers with a colon-delimited list of cipher suites or cipher families # e.g., "HIGH:!ADH:!AECDH:!kDH:!kECDH:!PSK:!SRP" # - TLS_CIPHERS= - NODE_ENV=production secrets: - key depends_on: - mq - vault - redis mq: # Use region specific image : PROD-AU or PROD-UK image: index.docker.io/gentrackio/rabbitmq: hostname: rabbit1 container_name: gateway_rabbitmq environment: RABBITMQ_DEFAULT_USER: rabbitmq RABBITMQ_DEFAULT_PASS: rabbitmq RABBITMQ_DEFAULT_VHOST: / ports: - 15672:15672 expose: - 5672 labels: NAME: rabbitmq1 volumes: - RabbitMQData:/var/lib/rabbitmq/mnesia vault: # Use region specific image : PROD-AU or PROD-UK image: index.docker.io/gentrackio/vault: container_name: gateway_vault expose: - 8200 volumes: - VaultData:/data cap_add: - IPC_LOCK entrypoint: vault server -config=/data/config/ redis: # Use region specific image : PROD-AU or PROD-UK image: index.docker.io/gentrackio/redis: hostname: redis1 container_name: gateway_redis expose: - 6379 volumes: - RedisData:/data:rw watchtower: image: v2tec/watchtower container_name: gateway_watchtower volumes: - /var/run/docker.sock:/var/run/docker.sock - ~/.docker/config.json:/config.json # sumologic: # image: sumologic/collector:latest # container_name: gateway_sumologic # volumes: # - /var/run/docker.sock:/var/run/docker.sock # - ~/platform/custom-sumo-sources.json:/etc/custom-sumo-sources.json # environment: # - SUMO_ACCESS_ID=[insert API ID here] # - SUMO_ACCESS_KEY=[insert API key here] # - SUMO_COLLECTOR_NAME=GCIS Data Gateway - [insert name here] # - SUMO_COLLECTOR_NAME_PREFIX= # - SUMO_SOURCES_JSON=/etc/custom-sumo-sources.json # datadog: # image: datadog/agent:7 # container_name: gateway_datadog # volumes: # - /var/run/docker.sock:/var/run/docker.sock # - /proc/:/host/proc/ # - /sys/fs/cgroup/:/host/sys/fs/cgroup # - ~/platform/http_check.yaml:/conf.d/http_check.yaml # environment: # - DD_API_KEY=[insert API key here] # - DD_SITE=datadoghq.eu # - DD_HOSTNAME=[insert name here] volumes: GatewayData: GatewayConfig: RedisData: RabbitMQData: VaultData: secrets: key: file: key.txt