-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env-example
More file actions
113 lines (98 loc) · 2.98 KB
/
.env-example
File metadata and controls
113 lines (98 loc) · 2.98 KB
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
########################################
# ENVIRONMENT
########################################
ENV=dev # dev | prod | staging
DEBUG=true
LOG_LEVEL=INFO # DEBUG | INFO | WARNING | ERROR
########################################
# APPLICATION CONFIG
########################################
APP_NAME="Marketplace API"
APP_VERSION="1.0.0"
APP_DESCRIPTION="An e-commerce marketplace API built with FastAPI."
API_V1_PREFIX=/api/v1
SERVER_HOST=0.0.0.0
SERVER_PORT=8000
RELOAD=true
########################################
# CORS SETTINGS
########################################
# Example: ["http://localhost:3000", "https://yourapp.com"]
CORS_ORIGINS=["*"]
########################################
# JWT SETTINGS
########################################
SECRET_KEY=your-secret-key # pragma: allowlist secret
JWT_ALGORITHM=HS256
JWT_ACCESS_TOKEN_EXPIRE_MINUTES=11520 # 8 days
JWT_REFRESH_TOKEN_EXPIRES_DAYS=7
PASSWORD_RESET_TOKEN_EXPIRE_MINUTES=15
########################################
# DATABASE CONFIG
########################################
# dev: sqlite | prod: postgres
DB_ENGINE=sqlite
# For SQLite
DB_NAME=database
# For PostgreSQL (prod)
DB_HOST=
DB_PORT=
DB_USER=
DB_PASSWORD=
########################################
# MESSAGE BROKER
########################################
# Options: redis | rabbitmq
BROKER=rabbitmq
########################################
# REDIS (if using redis as broker or cache)
########################################
# REDIS_HOST=localhost
# REDIS_PORT=6379
# REDIS_DB=0
########################################
# RABBITMQ (for Celery workers)
########################################
RABBITMQ_USER=guest
RABBITMQ_PASSWORD=guest
RABBITMQ_HOST=rabbitmq
RABBITMQ_PORT=5672
RABBITMQ_VHOST=/
########################################
# EMAIL CONFIG
########################################
EMAIL_FROM=admin@example.com
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=example@gmail.com
SMTP_PASSWORD=your_smtp_password
SMTP_TLS=true
########################################
# GOOGLE OAUTH
########################################
GOOGLE_CLIENT_ID=None
GOOGLE_CLIENT_SECRET=None # pragma: allowlist secret
########################################
# SENTRY MONITORING
########################################
SENTRY_DSN=<dsn>
SENTRY_TRACES_SAMPLE_RATE=1.0
SENTRY_PROFILES_SAMPLE_RATE=1.0
########################################
# PROMETHEUS MONITORING
########################################
PROMETHEUS_ENABLED=true
PROMETHEUS_PATH=/metrics
PROMETHEUS_METRICS_KEY=prometheus_metrics_key
########################################
# STRIPE PAYMENTS
########################################
STRIPE_SECRET_KEY=stripe_secret_key # pragma: allowlist secret
STRIPE_WEBHOOK_SECRET=stripe_webhook_secret # pragma: allowlist secret
STRIPE_API_VERSION=2024-11-08
STRIPE_SUCCESS_URL=https://yourapp.com/success
STRIPE_CANCEL_URL=https://yourapp.com/cancel
########################################
# DOCKER INTERNAL LINKS
########################################
DOCKER_NETWORK=marketplace_network