File tree Expand file tree Collapse file tree 2 files changed +78
-0
lines changed
Expand file tree Collapse file tree 2 files changed +78
-0
lines changed Original file line number Diff line number Diff line change 1+ # Многоступенчатая сборка
2+ # Этап 1: Сборка приложения
3+ FROM eclipse-temurin:17-jdk-jammy AS build
4+ WORKDIR /app
5+
6+ RUN apt-get update && \
7+ apt-get install -y maven
8+
9+ COPY pom.xml .
10+ RUN mvn dependency:go-offline -B
11+
12+ COPY src ./src
13+ RUN mvn clean package -DskipTests
14+
15+ FROM eclipse-temurin:17-jre-jammy
16+ WORKDIR /app
17+ RUN useradd -m -d /app -s /bin/bash -u 1000 appuser && \
18+ chown -R appuser:appuser /app
19+
20+ COPY --from=build --chown=appuser:appuser /app/target/techradar-backend-*.jar app.jar
21+ USER appuser
22+ EXPOSE 8080 8090 10260
23+ ENTRYPOINT ["java" , "-jar" , "app.jar" ]
24+
Original file line number Diff line number Diff line change 1+ services :
2+ techradar-postgres :
3+ image : postgres:15-alpine
4+ container_name : techradar-postgres
5+ environment :
6+ POSTGRES_DB : ${TECHRADAR_POSTGRES_DB:-techradar}
7+ POSTGRES_USER : ${TECHRADAR_POSTGRES_USER:-postgres}
8+ POSTGRES_PASSWORD : ${TECHRADAR_POSTGRES_PASSWORD:-postgres}
9+ ports :
10+ - " ${TECHRADAR_POSTGRES_NODEPORT:-5432}:5432"
11+ volumes :
12+ - techradar-postgres:/var/lib/postgresql/data
13+ healthcheck :
14+ test : ["CMD-SHELL", "pg_isready -U ${TECHRADAR_POSTGRES_USER:-postgres}"]
15+ interval : 10s
16+ timeout : 5s
17+ retries : 5
18+ networks :
19+ - beeatlas-network
20+
21+ techradar-backend :
22+ build :
23+ context : .
24+ dockerfile : Dockerfile
25+ container_name : techradar-backend-app
26+ depends_on :
27+ techradar-postgres :
28+ condition : service_healthy
29+ environment :
30+ SPRING_DATASOURCE_URL : jdbc:postgresql://${TECHRADAR_POSTGRES_HOST:-techradar-postgres}:5432/${TECHRADAR_POSTGRES_DB:-techradar}
31+ SPRING_DATASOURCE_USERNAME : ${TECHRADAR_POSTGRES_USER:-postgres}
32+ SPRING_DATASOURCE_PASSWORD : ${TECHRADAR_POSTGRES_PASSWORD:-postgres}
33+ SPRING_JPA_HIBERNATE_DDL_AUTO : none
34+ SPRING_JPA_PROPERTIES_HIBERNATE_DEFAULT_SCHEMA : techradar
35+ SPRING_FLYWAY_DEFAULT_SCHEMA : techradar
36+ SPRING_FLYWAY_BASELINE_ON_MIGRATE : " true"
37+ SPRING_FLYWAY_CLEAN_DISABLED : " true"
38+ healthcheck :
39+ test : ["CMD", "curl", "-f", "http://localhost:8080/actuator/health"]
40+ interval : 5s
41+ timeout : 3s
42+ retries : 15
43+ ports :
44+ - " ${TECHRADAR_SERVICE_PORT:-8081}:8080"
45+ networks :
46+ - beeatlas-network
47+ restart : unless-stopped
48+
49+ networks :
50+ beeatlas-network :
51+ driver : bridge
52+
53+ volumes :
54+ techradar-postgres:
You can’t perform that action at this time.
0 commit comments