-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathenv.docker.example
More file actions
187 lines (152 loc) · 6.42 KB
/
env.docker.example
File metadata and controls
187 lines (152 loc) · 6.42 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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
# ============================================
# Local Development Environment Configuration
# ============================================
# Скопируйте этот файл в .env и при необходимости измените значения
# cp env.docker.example .env
# ============================================
# Docker Compose Network Configuration
# ============================================
# В Docker Compose сервисы доступны по именам, а не localhost
# Используйте эти значения для работы внутри Docker сети
# ============================================
# PostgreSQL Database
# ============================================
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_DB=experiment_db
POSTGRES_PORT=5433
# Database-specific users (created automatically by init script)
AUTH_DB_USER=auth_user
AUTH_DB_PASSWORD=auth_password
EXPERIMENT_DB_USER=experiment_user
EXPERIMENT_DB_PASSWORD=experiment_password
# URL для подключения из контейнеров (использует имя сервиса)
# Auth Service использует AUTH_DATABASE_URL
AUTH_DATABASE_URL=postgresql://auth_user:auth_password@postgres:5432/auth_db
# Experiment Service использует EXPERIMENT_DATABASE_URL
EXPERIMENT_DATABASE_URL=postgresql://experiment_user:experiment_password@postgres:5432/experiment_db
# URL для подключения с хоста (для локальной разработки)
# Используется порт 5433, чтобы не конфликтовать с локальным PostgreSQL на 5432
AUTH_DATABASE_URL_LOCAL=postgresql://auth_user:auth_password@localhost:5433/auth_db
EXPERIMENT_DATABASE_URL_LOCAL=postgresql://experiment_user:experiment_password@localhost:5433/experiment_db
# Legacy DATABASE_URL (для обратной совместимости, использует experiment_db)
DATABASE_URL=postgresql://experiment_user:experiment_password@postgres:5432/experiment_db
DATABASE_URL_LOCAL=postgresql://experiment_user:experiment_password@localhost:5433/experiment_db
# ============================================
# Experiment Service (Backend)
# ============================================
EXPERIMENT_SERVICE_ENV=development
EXPERIMENT_SERVICE_HOST=0.0.0.0
EXPERIMENT_SERVICE_PORT=8002
# Auth Service URL
# В Docker Compose: http://auth-service:8001
# Локально: http://localhost:8001
AUTH_SERVICE_URL=http://auth-service:8001
AUTH_SERVICE_URL_LOCAL=http://localhost:8001
# Auth Service Configuration
AUTH_SERVICE_ENV=development
AUTH_SERVICE_HOST=0.0.0.0
AUTH_SERVICE_PORT=8001
# JWT Configuration
JWT_SECRET=dev-secret-key-change-in-production
JWT_ALGORITHM=HS256
ACCESS_TOKEN_TTL_SEC=900
REFRESH_TOKEN_TTL_SEC=1209600
# Password Hashing
BCRYPT_ROUNDS=12
# Message Broker (опционально, не используется активно)
RABBITMQ_URL=amqp://guest:guest@rabbitmq:5672/
RABBITMQ_URL_LOCAL=amqp://guest:guest@localhost:5672/
RABBITMQ_EXCHANGE=events
# Telemetry Broker (опционально, не используется активно)
TELEMETRY_BROKER_URL=redis://redis:6379/0
TELEMETRY_BROKER_URL_LOCAL=redis://localhost:6379/0
# OpenTelemetry (опционально)
OTEL_EXPORTER_ENDPOINT=http://otel-collector:4318
OTEL_EXPORTER_ENDPOINT_LOCAL=http://localhost:4318
# ============================================
# Auth Proxy (BFF)
# ============================================
AUTH_PROXY_PORT=8080
AUTH_PROXY_LOG_LEVEL=info
# Upstream URLs
# В Docker Compose используем имена сервисов
TARGET_EXPERIMENT_URL=http://experiment-service:8002
TARGET_EXPERIMENT_URL_LOCAL=http://localhost:8002
AUTH_URL=http://auth-service:8001
AUTH_URL_LOCAL=http://localhost:8001
# Cookie settings
COOKIE_DOMAIN=localhost
COOKIE_SECURE=false
COOKIE_SAMESITE=lax
ACCESS_COOKIE_NAME=access_token
REFRESH_COOKIE_NAME=refresh_token
ACCESS_TTL_SEC=900
REFRESH_TTL_SEC=1209600
# CORS settings
CORS_ORIGINS=http://localhost:3000,http://localhost:80
# Rate limiting
RATE_LIMIT_WINDOW_MS=60000
RATE_LIMIT_MAX=60
# ============================================
# Experiment Portal (Frontend)
# ============================================
# Vite переменные (префикс VITE_ обязателен)
# В Docker Compose используем имя сервиса auth-proxy
VITE_API_URL=http://localhost:8080/api
# Для прямого подключения к experiment-service (без auth-proxy)
# VITE_API_URL=http://localhost:8002/api/v1
# ============================================
# Redis (опционально)
# ============================================
REDIS_PORT=6379
REDIS_PASSWORD=
# ============================================
# RabbitMQ (опционально)
# ============================================
RABBITMQ_PORT=5672
RABBITMQ_MANAGEMENT_PORT=15672
# ============================================
# Audit Log Retention
# ============================================
AUDIT_RETENTION_DAYS=365
# ============================================
# Development Mode Settings
# ============================================
# Включить hot-reload для разработки
DEV_MODE=true
# Включить debug логирование
DEBUG=false
# ============================================
# Network Configuration
# ============================================
# Имя Docker сети (будет создана автоматически)
DOCKER_NETWORK_NAME=experiment-tracking-network
# ============================================
# Volume Names (для персистентности данных)
# ============================================
POSTGRES_DATA_VOLUME=backend-postgres-data
REDIS_DATA_VOLUME=experiment-redis-data
LOKI_DATA_VOLUME=experiment-loki-data
GRAFANA_DATA_VOLUME=experiment-grafana-data
# ============================================
# Grafana Stack (Logging)
# ============================================
# Grafana веб-интерфейс для просмотра логов
GRAFANA_PORT=3001
GRAFANA_ADMIN_USER=admin
GRAFANA_ADMIN_PASSWORD=admin
GRAFANA_ANONYMOUS_ENABLED=false
# Loki - система хранения логов
LOKI_PORT=3100
# Email / SMTP (Mailpit для разработки: http://localhost:8025)
MAILPIT_PORT=1025
MAILPIT_WEB_PORT=8025
SMTP_HOST=mailpit
SMTP_PORT=1025
SMTP_USER=
SMTP_PASSWORD=
SMTP_FROM=noreply@experiment-platform.local
SMTP_FROM_NAME=Experiment Platform
SMTP_ENABLED=true
APP_URL=http://localhost:3000