pokeapi/docker-compose.yml
2024-01-09 20:46:53 +01:00

67 lines
1.8 KiB
YAML

version: '2.4'
services:
cache:
image: redis:7.2.3-alpine
volumes:
- redis_data:/data
restart: always
db:
image: postgres:16.1
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-pokemon}
POSTGRES_USER: ${POSTGRES_USER:-ash}
POSTGRES_DB: ${POSTGRES_DB:-pokeapi}
volumes:
- pg_data:/var/lib/postgresql/data
restart: always
app:
user: ${RUN_AS:-pokeapi}
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-pokemon}
POSTGRES_USER: ${POSTGRES_USER:-ash}
POSTGRES_DB: ${POSTGRES_DB:-pokeapi}
volumes:
- .:/code
links:
- db
- cache
depends_on:
- db
- cache
restart: always
web:
image: nginx:1.25.3-alpine
ports:
- "80:80"
- "443:443"
restart: always
# command: [nginx-debug, '-g', 'daemon off;']
volumes:
- ./Resources/nginx/nginx.conf:/etc/nginx/nginx.conf:ro
- ./Resources/nginx/ssl:/ssl:ro
- graphql_cache:/tmp/cache
graphql-engine:
image: hasura/graphql-engine:v2.36.1-ce
ports:
- "8080:8080"
depends_on:
- "db"
restart: always
environment:
HASURA_GRAPHQL_DATABASE_URL: postgres://${POSTGRES_USER:-ash}:${POSTGRES_PASSWORD:-pokemon}@db:5432/${POSTGRES_DB:-pokeapi}
HASURA_GRAPHQL_ENABLE_CONSOLE: "true"
HASURA_GRAPHQL_DEV_MODE: "false"
HASURA_GRAPHQL_LOG_LEVEL: "warn"
HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log
HASURA_GRAPHQL_ADMIN_SECRET: ${HASURA_GRAPHQL_ADMIN_SECRET:-pokemon}
HASURA_GRAPHQL_UNAUTHORIZED_ROLE: anon
HASURA_GRAPHQL_ENABLE_TELEMETRY: "false"
# HASURA_GRAPHQL_CONSOLE_ASSETS_DIR: /srv/console-assets
volumes:
pg_data:
redis_data:
graphql_cache: