forked from formbricks/formbricks
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
136 lines (102 loc) · 4.32 KB
/
docker-compose.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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
version: "3.3"
# If you already have a local .env then please run this using
# docker compose --env-file /dev/null up
# This should be the same as below if you are running via docker compose up
x-webapp-url: &webapp_url http://localhost:3000
# PostgreSQL DB for Formbricks to connect to
x-database-url: &database_url postgresql://postgres:postgres@postgres:5432/formbricks?schema=public
# NextJS Auth
# @see: https://next-auth.js.org/configuration/options#nextauth_secret
# You can use: `openssl rand -hex 32` to generate one
x-nextauth-secret: &nextauth_secret 10ee8bc17d40a457544cf373affbab16
# Set this to your public-facing URL, e.g., https://example.com
# You do not need the NEXTAUTH_URL environment variable in Vercel.
x-nextauth-url: &nextauth_url http://localhost:3000
# Encryption key
# You can use: `openssl rand -hex 32` to generate one
x-encryption-key: &encryption_key 1b3d888592454d23b520040950654669
x-mail-from: &mail_from
x-smtp-host: &smtp_host
x-smtp-port: &smtp_port # Enable SMTP_SECURE_ENABLED for TLS (port 465)
x-smtp-secure-enabled: &smtp_secure_enabled
x-smtp-user: &smtp_user
x-smtp-password: &smtp_password
# Set the below value to your public-facing URL, e.g., https://example.com
# Set the below value if you have and want to share a shorter base URL than the x-survey-base-url
x-short-url-base:
&short_url_base # Email Verification. If you enable Email Verification you have to setup SMTP-Settings, too.
x-email-verification-disabled: &email_verification_disabled 1
# Password Reset. If you enable Password Reset functionality you have to setup SMTP-Settings, too.
x-password-reset-disabled: &password_reset_disabled 1
# Signup. Disable the ability for new users to create an account.
x-signup-disabled: &signup_disabled 0
# Team Invite. Disable the ability for invited users to create an account.
x-invite-disabled: &invite_disabled 0
# Set the below values to display privacy policy, imprint and terms of service links in the footer of signup & public pages.
x-privacy-url: &privacy_url
x-terms-url: &terms_url
x-imprint-url: &imprint_url # Configure Github Login
x-github-auth-enabled: &github_auth_enabled 0
x-github-id: &github_id
x-github-secret: &github_secret # Configure Google Login
x-google-auth-enabled: &google_auth_enabled 0
x-google-client-id: &google_client_id
x-google-client-secret: &google_client_secret # Disable Sentry warning
x-sentry-ignore-api-resolution-error: &sentry_ignore_api_resolution_error # Enable Sentry Error Tracking
x-next-public-sentry-dsn: &next_public_sentry_dsn # Cron Secret
x-cron-secret:
&cron_secret # Configure ASSET_PREFIX_URL when you want to ship JS & CSS files from a complete URL instead of the current domain
x-asset-prefix-url: &asset_prefix_url
services:
postgres:
restart: always
image: postgres:15-alpine
volumes:
- postgres:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=postgres
formbricks:
restart: always
build:
context: .
dockerfile: ./apps/web/Dockerfile
args:
DATABASE_URL: *database_url
NEXTAUTH_SECRET: *nextauth_secret
depends_on:
- postgres
ports:
- 3000:3000
environment:
WEBAPP_URL: *webapp_url
DATABASE_URL: *database_url
NEXTAUTH_SECRET: *nextauth_secret
NEXTAUTH_URL: *nextauth_url
MAIL_FROM: *mail_from
SMTP_HOST: *smtp_host
SMTP_PORT: *smtp_port
SMTP_SECURE_ENABLED: *smtp_secure_enabled
SMTP_USER: *smtp_user
SMTP_PASSWORD: *smtp_password
ENCRYPTION_KEY: *encryption_key
SHORT_URL_BASE: *short_url_base
PRIVACY_URL: *privacy_url
TERMS_URL: *terms_url
IMPRINT_URL: *imprint_url
EMAIL_VERIFICATION_DISABLED: *email_verification_disabled
PASSWORD_RESET_DISABLED: *password_reset_disabled
SIGNUP_DISABLED: *signup_disabled
INVITE_DISABLED: *invite_disabled
SENTRY_IGNORE_API_RESOLUTION_ERROR: *sentry_ignore_api_resolution_error
NEXT_PUBLIC_SENTRY_DSN: *next_public_sentry_dsn
GITHUB_AUTH_ENABLED: *github_auth_enabled
GITHUB_ID: *github_id
GITHUB_SECRET: *github_secret
GOOGLE_AUTH_ENABLED: *google_auth_enabled
GOOGLE_CLIENT_ID: *google_client_id
GOOGLE_CLIENT_SECRET: *google_client_secret
CRON_SECRET: *cron_secret
ASSET_PREFIX_URL: *asset_prefix_url
volumes:
postgres:
driver: local