# Dockerfile для crypto-service.
# Базовый образ — Liberica JDK 21 (открытый дистрибутив BellSoft с
# поддержкой работы на территории РФ). Можно заменить на любой
# OpenJDK 21.
FROM bellsoft/liberica-openjdk-debian:21 AS build
WORKDIR /src
COPY . .
RUN ./gradlew --no-daemon shadowJar

FROM bellsoft/liberica-openjre-debian:21-slim
RUN useradd -r -u 1100 -g root bj-crypto && \
    mkdir -p /run/bj && \
    chown bj-crypto:root /run/bj
USER bj-crypto
COPY --from=build /src/build/libs/crypto-service-*-all.jar /opt/crypto-service.jar
ENV BJ_CRYPTO_SOCKET=/run/bj/crypto.sock \
    BJ_CRYPTO_PROVIDER=stub
ENTRYPOINT ["java", "-jar", "/opt/crypto-service.jar"]
