forked from OpenSats/website
-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathdocker-compose.prod.yml
117 lines (102 loc) · 3.6 KB
/
docker-compose.prod.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
services:
magic-cloudflared:
image: cloudflare/cloudflared:latest
container_name: magic-cloudflared
restart: unless-stopped
command: tunnel --no-autoupdate run
environment:
TUNNEL_TOKEN: ${CLOUDFLARE_TUNNEL_TOKEN}
REAL_IP_HEADER: Cf-Connecting-Ip
networks:
- strapi-shared-network
depends_on:
- magic-nginx
magic-nginx:
image: nginx:1
container_name: magic-nginx
restart: unless-stopped
ports:
- 80:80
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf
networks:
- strapi-shared-network
depends_on:
- magic-app
magic-app:
build:
context: .
dockerfile: Dockerfile
container_name: magic-app
restart: unless-stopped
environment:
NODE_ENV: production
APP_URL: https://donate.magicgrants.org
DATABASE_URL: ${DATABASE_URL}
NEXTAUTH_URL: https://donate.magicgrants.org
NEXTAUTH_URL_INTERNAL: http://localhost:3000
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
USER_SETTINGS_JWT_SECRET: ${USER_SETTINGS_JWT_SECRET}
TURNSTILE_SECRET: ${TURNSTILE_SECRET}
NEXT_PUBLIC_TURNSTILE_SITEKEY: 0x4AAAAAAA11o5rNvbUuAWSJ
STRAPI_API_URL: ${STRAPI_API_URL}
STRAPI_API_TOKEN: ${STRAPI_API_TOKEN}
SMTP_HOST: email-smtp.us-east-2.amazonaws.com
SMTP_PORT: 587
SMTP_USER: ${SMTP_USER}
SMTP_PASS: ${SMTP_PASS}
SES_VERIFIED_SENDER: [email protected]
STRIPE_MONERO_SECRET_KEY: ${STRIPE_MONERO_SECRET_KEY}
STRIPE_MONERO_WEBHOOK_SECRET: ${STRIPE_MONERO_WEBHOOK_SECRET}
STRIPE_FIRO_SECRET_KEY: ${STRIPE_FIRO_SECRET_KEY}
STRIPE_FIRO_WEBHOOK_SECRET: ${STRIPE_FIRO_WEBHOOK_SECRET}
STRIPE_PRIVACY_GUIDES_SECRET_KEY: ${STRIPE_PRIVACY_GUIDES_SECRET_KEY}
STRIPE_PRIVACY_GUIDES_WEBHOOK_SECRET: ${STRIPE_PRIVACY_GUIDES_WEBHOOK_SECRET}
STRIPE_GENERAL_SECRET_KEY: ${STRIPE_GENERAL_SECRET_KEY}
STRIPE_GENERAL_WEBHOOK_SECRET: ${STRIPE_GENERAL_WEBHOOK_SECRET}
PRINTFUL_API_KEY: ${PRINTFUL_API_KEY}
PRINTFUL_WEBHOOK_SECRET: ${PRINTFUL_WEBHOOK_SECRET}
KEYCLOAK_URL: ${KEYCLOAK_URL}
KEYCLOAK_CLIENT_ID: app
KEYCLOAK_CLIENT_SECRET: ${KEYCLOAK_CLIENT_SECRET}
KEYCLOAK_REALM_NAME: magic
BTCPAY_URL: ${BTCPAY_URL}
BTCPAY_EXTERNAL_URL: https://btcpay.magicgrants.org
BTCPAY_API_KEY: ${BTCPAY_API_KEY}
BTCPAY_STORE_ID: ${BTCPAY_STORE_ID}
BTCPAY_WEBHOOK_SECRET: ${BTCPAY_WEBHOOK_SECRET}
MONERO_APPLICATION_RECIPIENT: [email protected]
FIRO_APPLICATION_RECIPIENT: [email protected]
PRIVACY_GUIDES_APPLICATION_RECIPIENT: [email protected]
GENERAL_APPLICATION_RECIPIENT: [email protected]
NEXT_PUBLIC_MONERO_APPLICATION_RECIPIENT: [email protected]
NEXT_PUBLIC_FIRO_APPLICATION_RECIPIENT: [email protected]
NEXT_PUBLIC_PRIVACY_GUIDES_APPLICATION_RECIPIENT: [email protected]
NEXT_PUBLIC_GENERAL_APPLICATION_RECIPIENT: [email protected]
depends_on:
- magic-postgres
networks:
- strapi-shared-network
magic-redis:
container_name: magic-redis
image: redis:7-alpine
restart: unless-stopped
networks:
- strapi-shared-network
magic-postgres:
image: postgres:16-alpine
container_name: magic-postgres
restart: unless-stopped
environment:
POSTGRES_USER: magic
POSTGRES_DB: magic
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
volumes:
- 'postgres_data:/var/lib/postgresql/data'
networks:
- strapi-shared-network
volumes:
postgres_data:
networks:
strapi-shared-network:
external: true