# Conflicts: # docker-compose.yaml # src/main/java/ru/soune/nocopy/dto/MessageCode.java
This commit is contained in:
+87
-4
@@ -1,13 +1,39 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
storage:
|
||||
image: alpine:latest
|
||||
container_name: file-storage
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
memory: 128M
|
||||
reservations:
|
||||
memory: 64M
|
||||
networks:
|
||||
- app-network
|
||||
volumes:
|
||||
- uploads_data:/storage:rw
|
||||
command: tail -f /dev/null
|
||||
restart: unless-stopped
|
||||
|
||||
db:
|
||||
image: postgres:17
|
||||
restart: always
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '2.0'
|
||||
memory: 2G
|
||||
reservations:
|
||||
cpus: '1.0'
|
||||
memory: 1G
|
||||
environment:
|
||||
POSTGRES_DB: no_copy_
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_SHARED_BUFFERS: 512MB
|
||||
POSTGRES_EFFECTIVE_CACHE_SIZE: 1536MB
|
||||
ports:
|
||||
- "54320:5432"
|
||||
volumes:
|
||||
@@ -21,10 +47,19 @@ services:
|
||||
app:
|
||||
build: .
|
||||
container_name: app-backend
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '1.5'
|
||||
memory: 1G
|
||||
reservations:
|
||||
cpus: '0.5'
|
||||
memory: 512M
|
||||
environment:
|
||||
FILE_STORAGE_PATH: /data/uploads
|
||||
MAX_FILE_SIZE: 1073741824
|
||||
FILE_CHUNK_SIZE: 5242880
|
||||
MAX_FILE_SIZE: 10737418240
|
||||
# FILE_CHUNK_SIZE: 1048576
|
||||
FILE_CHUNK_SIZE: 1000000
|
||||
POSTGRES_DB: no_copy_
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
@@ -32,6 +67,7 @@ services:
|
||||
POSTGRES_HOST: db
|
||||
YANDEX_SEARCH_API_KEY: AQVNyaVaUmgUb1GMCtf5zSEqFxy0woXrcMOOB43q
|
||||
YANDEX_SEARCH_FOLDER_ID: b1gokpdbm6qfpsou8pcd
|
||||
STORAGE_SERVICE_URL: http://storage:8081
|
||||
depends_on:
|
||||
- db
|
||||
ports:
|
||||
@@ -43,11 +79,18 @@ services:
|
||||
- backend
|
||||
- api
|
||||
volumes:
|
||||
- ./uploads:/data/uploads:rw
|
||||
- uploads_data:/data/uploads:rw
|
||||
|
||||
grafana:
|
||||
image: grafana/grafana:10.3.1
|
||||
container_name: grafana
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '0.5'
|
||||
memory: 512M
|
||||
reservations:
|
||||
memory: 256M
|
||||
ports:
|
||||
- "3000:3000"
|
||||
depends_on:
|
||||
@@ -64,6 +107,8 @@ services:
|
||||
GF_SECURITY_ADMIN_USER: admin
|
||||
GF_SECURITY_ADMIN_PASSWORD: admin
|
||||
GF_METRICS_ENABLED: "true"
|
||||
GF_DATABASE_MAX_IDLE_CONN: "2"
|
||||
GF_DATABASE_MAX_OPEN_CONN: "10"
|
||||
volumes:
|
||||
- ./infrastructure/grafana/provisioning:/etc/grafana/provisioning
|
||||
- ./infrastructure/grafana/dashboards:/var/lib/grafana/dashboards
|
||||
@@ -78,10 +123,23 @@ services:
|
||||
prometheus:
|
||||
image: prom/prometheus:latest
|
||||
container_name: prometheus
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '0.5'
|
||||
memory: 1G
|
||||
reservations:
|
||||
memory: 512M
|
||||
ports:
|
||||
- "9090:9090"
|
||||
volumes:
|
||||
- ./infrastructure/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
|
||||
- prometheus_data:/prometheus
|
||||
command:
|
||||
- '--config.file=/etc/prometheus/prometheus.yml'
|
||||
- '--storage.tsdb.path=/prometheus'
|
||||
- '--storage.tsdb.retention.time=15d' # Удерживать 15 дней
|
||||
- '--web.enable-lifecycle'
|
||||
healthcheck:
|
||||
test: [ "CMD", "wget", "--spider", "http://localhost:9090/-/healthy" ]
|
||||
interval: 10s
|
||||
@@ -93,10 +151,20 @@ services:
|
||||
loki:
|
||||
image: grafana/loki:2.9.2
|
||||
container_name: loki
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '1.0'
|
||||
memory: 2G
|
||||
reservations:
|
||||
memory: 1G
|
||||
ports:
|
||||
- "3100:3100"
|
||||
volumes:
|
||||
- ./infrastructure/loki/loki-config.yaml:/etc/loki/loki-config.yaml:ro
|
||||
- loki_data:/loki
|
||||
command:
|
||||
- -config.file=/etc/loki/loki-config.yaml
|
||||
healthcheck:
|
||||
test: [ "CMD", "wget", "--spider", "-q", "http://localhost:3100/ready" ]
|
||||
interval: 10s
|
||||
@@ -108,6 +176,13 @@ services:
|
||||
tempo:
|
||||
image: grafana/tempo:2.4.1
|
||||
container_name: tempo
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '0.5'
|
||||
memory: 512M
|
||||
reservations:
|
||||
memory: 256M
|
||||
command: [ "-config.file=/etc/tempo/tempo.yaml" ]
|
||||
volumes:
|
||||
- ./infrastructure/tempo/tempo.yaml:/etc/tempo/tempo.yaml
|
||||
@@ -120,6 +195,13 @@ services:
|
||||
alloy:
|
||||
image: grafana/alloy:latest
|
||||
container_name: alloy
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '0.5'
|
||||
memory: 256M
|
||||
reservations:
|
||||
memory: 128M
|
||||
user: root
|
||||
ports:
|
||||
- "9080:9080"
|
||||
@@ -148,7 +230,8 @@ volumes:
|
||||
loki_chunks:
|
||||
loki_index:
|
||||
loki_rules:
|
||||
# uploads_volume:
|
||||
uploads_data:
|
||||
prometheus_data:
|
||||
|
||||
networks:
|
||||
app-network:
|
||||
|
||||
Reference in New Issue
Block a user