22
33volumes :
44 database-data :
5+ redis-data :
56
67networks :
78 stack :
@@ -19,6 +20,17 @@ services:
1920 networks :
2021 - stack
2122
23+ redis :
24+ container_name : redis
25+ image : redis:latest
26+ restart : always
27+ volumes :
28+ - redis-data:/data
29+ networks :
30+ - stack
31+ ports :
32+ - " ${REDIS_PORT:-6379}:6379"
33+
2234 calcom :
2335 image : calcom.docker.scarf.sh/calcom/cal.com
2436 build :
@@ -50,6 +62,58 @@ services:
5062 depends_on :
5163 - database
5264
65+ calcom-api :
66+ container_name : calcom-api
67+ build :
68+ context : ./calcom
69+ dockerfile : apps/api/v2/Dockerfile
70+ args :
71+ DATABASE_URL : ${DATABASE_URL}
72+ DATABASE_DIRECT_URL : ${DATABASE_URL}
73+ restart : always
74+ networks :
75+ - stack
76+ ports :
77+ - " ${API_PORT:-80}:${API_PORT:-80}"
78+ env_file : .env
79+ environment :
80+ - NODE_ENV=${NODE_ENV}
81+ - API_PORT=${API_PORT:-80}
82+ - API_URL=${API_URL}
83+ - DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB}
84+ - DATABASE_READ_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB}
85+ - DATABASE_WRITE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB}
86+ - DATABASE_DIRECT_URL=${DATABASE_URL}
87+ - NEXTAUTH_SECRET=${NEXTAUTH_SECRET}
88+ - JWT_SECRET=${JWT_SECRET}
89+ - REDIS_URL=${REDIS_URL}
90+ - LOG_LEVEL=${LOG_LEVEL}
91+ - API_KEY_PREFIX=${API_KEY_PREFIX}
92+ - WEB_APP_URL=${WEB_APP_URL}
93+ - IS_E2E=${IS_E2E:-false}
94+ - REWRITE_API_V2_PREFIX=${REWRITE_API_V2_PREFIX:-true}
95+ - CALCOM_LICENSE_KEY=${CALCOM_LICENSE_KEY}
96+ - NEXT_PUBLIC_VAPID_PUBLIC_KEY=${NEXT_PUBLIC_VAPID_PUBLIC_KEY}
97+ - VAPID_PRIVATE_KEY=${VAPID_PRIVATE_KEY}
98+ - STRIPE_API_KEY=${STRIPE_API_KEY}
99+ - STRIPE_WEBHOOK_SECRET=${STRIPE_WEBHOOK_SECRET}
100+ - STRIPE_PRICE_ID_STARTER=${STRIPE_PRICE_ID_STARTER}
101+ - STRIPE_PRICE_ID_STARTER_OVERAGE=${STRIPE_PRICE_ID_STARTER_OVERAGE}
102+ - STRIPE_PRICE_ID_ESSENTIALS=${STRIPE_PRICE_ID_ESSENTIALS}
103+ - STRIPE_PRICE_ID_ESSENTIALS_OVERAGE=${STRIPE_PRICE_ID_ESSENTIALS_OVERAGE}
104+ - STRIPE_PRICE_ID_ENTERPRISE=${STRIPE_PRICE_ID_ENTERPRISE}
105+ - STRIPE_PRICE_ID_ENTERPRISE_OVERAGE=${STRIPE_PRICE_ID_ENTERPRISE_OVERAGE}
106+ - STRIPE_TEAM_MONTHLY_PRICE_ID=${STRIPE_TEAM_MONTHLY_PRICE_ID}
107+ - IS_TEAM_BILLING_ENABLED=${IS_TEAM_BILLING_ENABLED:-false}
108+ - AXIOM_DATASET=${AXIOM_DATASET}
109+ - AXIOM_TOKEN=${AXIOM_TOKEN}
110+ - LOGGER_BRIDGE_LOG_LEVEL=${LOGGER_BRIDGE_LOG_LEVEL}
111+ - DOCS_URL=${DOCS_URL}
112+ - GET_LICENSE_KEY_URL=${GET_LICENSE_KEY_URL}
113+ depends_on :
114+ - database
115+ - redis
116+
53117# Optional use of Prisma Studio. In production, comment out or remove the section below to prevent unwanted access to your database.
54118 studio :
55119 image : calcom.docker.scarf.sh/calcom/cal.com
0 commit comments