version: "3.7"
x-logging:
&default-logging
driver: json-file
options:
max-size: "10m"
max-file: "3"
services:
nginx:
environment:
- ACCOUNTS_ENABLED=true
depends_on:
- accounts
health-check:
accounts:
build:
context: ./docker/accounts
dockerfile: Dockerfile
args:
branch: main
container_name: accounts
restart: unless-stopped
logging: *default-logging
env_file:
- .env
- ACCOUNTS_EMAIL_URI=${ACCOUNTS_EMAIL_URI}
- ACCOUNTS_JWKS_FILE=/conf/jwks.json
- COOKIE_DOMAIN=${COOKIE_DOMAIN}
- COOKIE_HASH_KEY=${COOKIE_HASH_KEY}
- COOKIE_ENC_KEY=${COOKIE_ENC_KEY}
- PORTAL_DOMAIN=${PORTAL_DOMAIN}
- SERVER_DOMAIN=${SERVER_DOMAIN}
- SKYNET_DB_HOST=${SKYNET_DB_HOST:-mongo}
- SKYNET_DB_PORT=${SKYNET_DB_PORT:-27017}
- SKYNET_DB_USER=${SKYNET_DB_USER}
- SKYNET_DB_PASS=${SKYNET_DB_PASS}
- STRIPE_API_KEY=${STRIPE_API_KEY}
- STRIPE_WEBHOOK_SECRET=${STRIPE_WEBHOOK_SECRET}
- SKYNET_ACCOUNTS_LOG_LEVEL=${SKYNET_ACCOUNTS_LOG_LEVEL:-info}
volumes:
- ./docker/data/accounts:/data
- ./docker/accounts/conf:/conf
expose:
- 3000
networks:
shared:
ipv4_address: 10.10.10.70
- mongo
dashboard:
context: ./packages/dashboard
container_name: dashboard
- NEXT_PUBLIC_SKYNET_PORTAL_API=${SKYNET_PORTAL_API}
- NEXT_PUBLIC_SKYNET_DASHBOARD_URL=${SKYNET_DASHBOARD_URL}
- NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=${STRIPE_PUBLISHABLE_KEY}
- ./docker/data/dashboard/.next:/usr/app/.next
ipv4_address: 10.10.10.85
cockroach:
image: cockroachdb/cockroach:v20.2.3
container_name: cockroach
command: start --advertise-addr=${CR_IP} --join=${CR_CLUSTER_NODES} --certs-dir=/certs --listen-addr=0.0.0.0:26257 --http-addr=0.0.0.0:8080
- ./docker/data/cockroach/sqlite:/cockroach/cockroach-data
- ./docker/cockroach/certs:/certs
ports:
- "4080:8080"
- "26257:26257"
ipv4_address: 10.10.10.84