Compare commits
5
Commits
NCBACK-162
...
NC_YA
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4ee7e439c0 | ||
|
|
503463e1d0 | ||
|
|
5f61c82dee | ||
|
|
2139ca0e8c | ||
|
|
01332c7db5 |
@@ -0,0 +1,73 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
storage:
|
||||
image: alpine:latest
|
||||
container_name: file-storage-local
|
||||
networks:
|
||||
- app-network-local
|
||||
volumes:
|
||||
- uploads_data_local:/storage:rw
|
||||
command: tail -f /dev/null
|
||||
restart: unless-stopped
|
||||
|
||||
db:
|
||||
image: postgres:17.7
|
||||
restart: always
|
||||
environment:
|
||||
POSTGRES_DB: no_copy_
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_SHARED_BUFFERS: 512MB
|
||||
POSTGRES_EFFECTIVE_CACHE_SIZE: 1536MB
|
||||
ports:
|
||||
- "54320:5432"
|
||||
volumes:
|
||||
- pgdata_local:/var/lib/postgresql/data
|
||||
- ./init-scripts:/docker-entrypoint-initdb.d:ro
|
||||
container_name: postgres-local
|
||||
networks:
|
||||
app-network-local:
|
||||
aliases:
|
||||
- database
|
||||
|
||||
app:
|
||||
build: .
|
||||
container_name: app-backend-local
|
||||
environment:
|
||||
JAVA_TOOL_OPTIONS: "-Xmx2g -Xms1g"
|
||||
FILE_STORAGE_PATH: /data/uploads
|
||||
POSTGRES_DB: no_copy_
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_PORT: 5432
|
||||
POSTGRES_HOST: db
|
||||
# Используем local профиль
|
||||
SPRING_PROFILES_ACTIVE: local
|
||||
YANDEX_API_KEY: AQVNyaVaUmgUb1GMCtf5zSEqFxy0woXrcMOOB43q
|
||||
YANDEX_FOLDER_ID: b1gokpdbm6qfpsou8pcd
|
||||
YANDEX_SEARCH_URL: "https://searchapi.api.cloud.yandex.net/v2/image/search_by_image"
|
||||
depends_on:
|
||||
- db
|
||||
ports:
|
||||
- "8080:8080"
|
||||
networks:
|
||||
app-network-local:
|
||||
aliases:
|
||||
- app
|
||||
- backend
|
||||
volumes:
|
||||
- uploads_data_local:/data/uploads:rw
|
||||
healthcheck:
|
||||
test: [ "CMD", "curl", "-f", "http://localhost:8080/actuator/health" ]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
volumes:
|
||||
pgdata_local:
|
||||
uploads_data_local:
|
||||
|
||||
networks:
|
||||
app-network-local:
|
||||
driver: bridge
|
||||
@@ -0,0 +1,49 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
storage:
|
||||
image: alpine:latest
|
||||
container_name: file-storage
|
||||
networks:
|
||||
- app-network
|
||||
volumes:
|
||||
- uploads_data:/storage:rw
|
||||
command: tail -f /dev/null
|
||||
restart: unless-stopped
|
||||
|
||||
app:
|
||||
build: .
|
||||
container_name: app-backend
|
||||
environment:
|
||||
JAVA_TOOL_OPTIONS: "-Xmx2g -Xms1g"
|
||||
FILE_STORAGE_PATH: /data/uploads
|
||||
# Данные для Yandex Cloud БД
|
||||
YC_DB_USER: ${YC_DB_USER}
|
||||
YC_DB_PASSWORD: ${YC_DB_PASSWORD}
|
||||
# Используем prod профиль
|
||||
SPRING_PROFILES_ACTIVE: prod
|
||||
YANDEX_API_KEY: AQVNyaVaUmgUb1GMCtf5zSEqFxy0woXrcMOOB43q
|
||||
YANDEX_FOLDER_ID: b1gokpdbm6qfpsou8pcd
|
||||
YANDEX_SEARCH_URL: "https://searchapi.api.cloud.yandex.net/v2/image/search_by_image"
|
||||
ports:
|
||||
- "80:8080"
|
||||
networks:
|
||||
app-network:
|
||||
aliases:
|
||||
- app
|
||||
- backend
|
||||
volumes:
|
||||
- uploads_data:/data/uploads:rw
|
||||
healthcheck:
|
||||
test: [ "CMD", "curl", "-f", "http://localhost:8080/actuator/health" ]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
volumes:
|
||||
uploads_data:
|
||||
|
||||
networks:
|
||||
app-network:
|
||||
external: true
|
||||
driver: bridge
|
||||
@@ -1,2 +0,0 @@
|
||||
server:
|
||||
baseurl: "http://localhost"
|
||||
@@ -1,2 +0,0 @@
|
||||
server:
|
||||
baseurl: "http://92.242.61.23"
|
||||
@@ -0,0 +1,24 @@
|
||||
spring:
|
||||
datasource:
|
||||
url: jdbc:postgresql://rc1a-7osqmsdaf27d2ieh.mdb.yandexcloud.net:6432/ncp-test?ssl=true&sslmode=require
|
||||
username: ${YC_DB_USER:test}
|
||||
password: ${YC_DB_PASSWORD:testtest}
|
||||
driver-class-name: org.postgresql.Driver # ← ДОБАВЬ
|
||||
|
||||
jpa:
|
||||
hibernate:
|
||||
ddl-auto: update
|
||||
|
||||
flyway:
|
||||
enabled: false
|
||||
|
||||
file:
|
||||
storage:
|
||||
base-path: ${FILE_STORAGE_PATH:/data/uploads}
|
||||
chunk-size: ${FILE_CHUNK_SIZE:1000000} # 1MB
|
||||
max-file-size: ${MAX_FILE_SIZE:10737418240} # 10GB
|
||||
max-retry-attempts: ${MAX_RETRY_ATTEMPTS:3}
|
||||
chunk-timeout-ms: ${CHUNK_TIMEOUT_MS:300000} # 5 минут
|
||||
temp-ttl-hours: ${TEMP_TTL_HOURS:72} # 3 дня
|
||||
auth-token-life-hours: ${AUTH_TOKEN_LIFE:1} # 1 час
|
||||
session-expiry-hours: ${SESSION_EXPIRY_HOURS:24}
|
||||
@@ -1,7 +1,6 @@
|
||||
spring:
|
||||
# config:
|
||||
# activate:
|
||||
# on-profile: ${SPRING_PROFILES_ACTIVE:dev}
|
||||
profiles:
|
||||
active: ${SPRING_PROFILES_ACTIVE:local}
|
||||
|
||||
mail:
|
||||
host: smtp.gmail.com
|
||||
@@ -15,24 +14,15 @@ spring:
|
||||
starttls:
|
||||
enable: true
|
||||
|
||||
# mail:
|
||||
# host: postfix
|
||||
# port: 25
|
||||
# username: noreply@nocopy.com
|
||||
# password: nocopy!nocopy!
|
||||
# properties:
|
||||
# mail.smtp.auth: false
|
||||
# mail.smtp.starttls.enable: false
|
||||
# mail.debug: true
|
||||
|
||||
flyway:
|
||||
enabled: true
|
||||
baseline-on-migrate: true
|
||||
|
||||
datasource:
|
||||
url: jdbc:postgresql://${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
|
||||
username: ${POSTGRES_USER}
|
||||
password: ${POSTGRES_PASSWORD}
|
||||
# Настройки по умолчанию для local разработки
|
||||
url: jdbc:postgresql://${POSTGRES_HOST:localhost}:${POSTGRES_PORT:54320}/${POSTGRES_DB:no_copy_}
|
||||
username: ${POSTGRES_USER:postgres}
|
||||
password: ${POSTGRES_PASSWORD:postgres}
|
||||
driver-class-name: org.postgresql.Driver
|
||||
|
||||
jpa:
|
||||
|
||||
Reference in New Issue
Block a user