skillhub/server/Dockerfile.dev
wowo 348eb4e717
fix(storage): defer S3 bucket verification until first access (#289)
* fix(storage): defer S3 bucket verification until first access

* test(storage): cover deferred S3 bucket verification

* fix(runtime): widen backend container healthcheck window

* fix(runtime): widen backend container healthcheck window

* fix(test): use ddl-auto=create to prevent cross-context table drops

Multiple @SpringBootTest classes with different @MockBean configs
cause separate Spring contexts sharing the same H2 in-memory database.
With create-drop, one context's shutdown drops tables needed by another,
causing "Table not found (this database is empty)" errors.

* fix(test): widen awaitIndexedDocument timeout to 15s

CI runners are resource-constrained and async search indexing may not
complete within the previous 5-second window, causing flaky failures.
2026-04-12 15:24:09 +08:00

19 lines
593 B
Text

# Development Dockerfile
# Expects pre-built JAR at skillhub-app/target/*.jar
# Used by: make staging (local development workflow)
FROM eclipse-temurin:21-jre-alpine
RUN addgroup -S app && adduser -S app -G app
WORKDIR /app
# Copy pre-built JAR from local build (relative to server/ directory)
COPY ./skillhub-app/target/*.jar app.jar
RUN chown -R app:app /app
USER app
EXPOSE 8080
HEALTHCHECK --interval=10s --timeout=3s --start-period=60s --retries=12 \
CMD wget -qO- http://localhost:8080/actuator/health || exit 1
ENTRYPOINT ["java", "-XX:MaxRAMPercentage=75.0", "-jar", "app.jar"]