2019-05-16 10:39:25 -04:00
|
|
|
# https://docs.docker.com/compose/compose-file
|
|
|
|
# docker-compose up
|
|
|
|
# docker-compose stop
|
|
|
|
# docker-compose down
|
|
|
|
version: '3'
|
|
|
|
|
|
|
|
services:
|
2019-05-23 14:01:24 -05:00
|
|
|
postgres:
|
|
|
|
container_name: postgres
|
|
|
|
image: postgres:11-alpine
|
|
|
|
expose:
|
|
|
|
- "5433"
|
|
|
|
ports:
|
|
|
|
- "5433:5432"
|
|
|
|
environment:
|
|
|
|
- POSTGRES_USER=postgres
|
|
|
|
- POSTGRES_PASS=postgres
|
|
|
|
- POSTGRES_DB=shared
|
2019-05-16 10:39:25 -04:00
|
|
|
|
2019-05-23 14:01:24 -05:00
|
|
|
redis:
|
|
|
|
image: redis:latest
|
|
|
|
expose:
|
|
|
|
- "6379"
|
2019-05-16 10:39:25 -04:00
|
|
|
ports:
|
2019-05-23 14:01:24 -05:00
|
|
|
- "6379:6379"
|
|
|
|
entrypoint: redis-server --appendonly yes
|
2019-05-16 10:39:25 -04:00
|
|
|
|
2019-05-23 14:01:24 -05:00
|
|
|
datadog:
|
|
|
|
container_name: datadog
|
|
|
|
build:
|
|
|
|
context: .
|
|
|
|
dockerfile: docker/datadog-agent/Dockerfile
|
|
|
|
image: example-project/datadog:latest
|
2019-05-16 10:39:25 -04:00
|
|
|
ports:
|
2019-05-23 14:01:24 -05:00
|
|
|
- 8125:8125
|
|
|
|
- 8126:8126
|
|
|
|
env_file:
|
|
|
|
- .env_docker_compose
|
|
|
|
environment:
|
|
|
|
- DD_API_KEY=${DD_API_KEY}
|
|
|
|
- DD_LOGS_ENABLED=true
|
|
|
|
- DD_APM_ENABLED=true
|
|
|
|
- DD_RECEIVER_PORT=8126
|
|
|
|
- DD_APM_NON_LOCAL_TRAFFIC=true
|
|
|
|
- DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL=true
|
|
|
|
- DD_TAGS=source:docker env:dev
|
|
|
|
- DD_DOGSTATSD_ORIGIN_DETECTION=true
|
|
|
|
- DD_DOGSTATSD_NON_LOCAL_TRAFFIC=true
|
|
|
|
- ECS_FARGATE=false
|
|
|
|
|
|
|
|
web-app:
|
|
|
|
container_name: web-app
|
|
|
|
build:
|
|
|
|
context: .
|
|
|
|
dockerfile: cmd/web-app/Dockerfile
|
|
|
|
image: example-project/web-api:latest
|
|
|
|
ports:
|
|
|
|
- 3000:3000 # WEB APP
|
2019-05-16 10:39:25 -04:00
|
|
|
- 4000:4000 # DEBUG API
|
2019-05-23 14:01:24 -05:00
|
|
|
links:
|
|
|
|
- postgres
|
|
|
|
- redis
|
|
|
|
- datadog
|
|
|
|
env_file:
|
|
|
|
- .env_docker_compose
|
2019-05-16 10:39:25 -04:00
|
|
|
environment:
|
2019-05-23 14:01:24 -05:00
|
|
|
- WEB_APP_HTTP_HOST=0.0.0.0:3000
|
|
|
|
- WEB_APP_APP_BASE_URL=http://127.0.0.1:3000
|
|
|
|
- WEB_APP_REDIS_HOST=redis
|
|
|
|
- WEB_APP_DB_HOST=postgres
|
|
|
|
- WEB_APP_DB_USER=postgres
|
|
|
|
- WEB_APP_DB_PASS=postgres
|
|
|
|
- WEB_APP_DB_DATABASE=shared
|
|
|
|
- WEB_APP_AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
|
|
|
|
- WEB_APP_AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
|
|
|
|
- WEB_APP_AWS_REGION=${AWS_REGION}
|
|
|
|
- WEB_APP_AWS_USE_ROLE=${AWS_USE_ROLE}
|
|
|
|
- DD_TRACE_AGENT_HOSTNAME=datadog
|
|
|
|
- DD_TRACE_AGENT_PORT=8126
|
|
|
|
- DD_SERVICE_NAME=web-app
|
|
|
|
- DD_ENV=dev
|
2019-05-16 10:39:25 -04:00
|
|
|
# - GODEBUG=gctrace=1
|
|
|
|
|
2019-05-23 14:01:24 -05:00
|
|
|
web-api:
|
|
|
|
container_name: web-api
|
|
|
|
build:
|
|
|
|
context: .
|
|
|
|
dockerfile: cmd/web-api/Dockerfile
|
|
|
|
image: example-project/web-api:latest
|
2019-05-16 10:39:25 -04:00
|
|
|
ports:
|
2019-05-23 14:01:24 -05:00
|
|
|
- 3001:3001 # WEB API
|
2019-05-16 10:39:25 -04:00
|
|
|
- 4001:4001 # DEBUG API
|
2019-05-23 14:01:24 -05:00
|
|
|
links:
|
|
|
|
- postgres
|
|
|
|
- redis
|
|
|
|
- datadog
|
|
|
|
env_file:
|
|
|
|
- .env_docker_compose
|
|
|
|
environment:
|
|
|
|
- WEB_API_HTTP_HOST=0.0.0.0:3001
|
|
|
|
- WEB_API_APP_BASE_URL=http://127.0.0.1:3001
|
|
|
|
- WEB_API_REDIS_HOST=redis
|
|
|
|
- WEB_API_DB_HOST=postgres
|
|
|
|
- WEB_API_DB_USER=postgres
|
|
|
|
- WEB_API_DB_PASS=postgres
|
|
|
|
- WEB_API_DB_DATABASE=shared
|
|
|
|
- WEB_API_AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
|
|
|
|
- WEB_API_AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
|
|
|
|
- WEB_API_AWS_REGION=${AWS_REGION}
|
|
|
|
- WEB_API_AWS_USE_ROLE=${AWS_USE_ROLE}
|
|
|
|
- DD_TRACE_AGENT_HOSTNAME=datadog
|
|
|
|
- DD_TRACE_AGENT_PORT=8126
|
|
|
|
- DD_SERVICE_NAME=web-app
|
|
|
|
- DD_ENV=dev
|
|
|
|
# - GODEBUG=gctrace=1
|
|
|
|
|
|
|
|
|
|
|
|
|
2019-05-16 10:39:25 -04:00
|
|
|
|
|
|
|
|