NC_YA
Test Workflow / test (push) Successful in 4s

This commit is contained in:
vladp
2026-02-06 03:31:41 +07:00
parent 80c53515fb
commit 01332c7db5
9 changed files with 144 additions and 21 deletions
+2 -1
View File
@@ -16,4 +16,5 @@ RUN mkdir -p /data/uploads && chmod 755 /data/uploads
EXPOSE 8080 EXPOSE 8080
CMD ["java", "-jar", "app.jar"] # По умолчанию используем prod профиль в контейнере
CMD ["java", "-jar", "app.jar", "--spring.profiles.active=prod"]
+73
View File
@@ -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
+49
View File
@@ -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
+2
View File
@@ -0,0 +1,2 @@
YC_DB_USER=test
YC_DB_PASSWORD=testtest
-2
View File
@@ -1,2 +0,0 @@
server:
baseurl: "http://localhost"
-2
View File
@@ -1,2 +0,0 @@
server:
baseurl: "http://92.242.61.23"
+8
View File
@@ -0,0 +1,8 @@
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}
flyway:
enabled: false
+10 -16
View File
@@ -1,7 +1,10 @@
spring: spring:
# config: config:
# activate: activate:
# on-profile: ${SPRING_PROFILES_ACTIVE:dev} on-profile: default
profiles:
# По умолчанию используем local для разработки
active: ${SPRING_PROFILES_ACTIVE:local}
mail: mail:
host: smtp.gmail.com host: smtp.gmail.com
@@ -15,24 +18,15 @@ spring:
starttls: starttls:
enable: true 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: flyway:
enabled: true enabled: true
baseline-on-migrate: true baseline-on-migrate: true
datasource: datasource:
url: jdbc:postgresql://${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB} # Настройки по умолчанию для local разработки
username: ${POSTGRES_USER} url: jdbc:postgresql://${POSTGRES_HOST:localhost}:${POSTGRES_PORT:54320}/${POSTGRES_DB:no_copy_}
password: ${POSTGRES_PASSWORD} username: ${POSTGRES_USER:postgres}
password: ${POSTGRES_PASSWORD:postgres}
driver-class-name: org.postgresql.Driver driver-class-name: org.postgresql.Driver
jpa: jpa: