Files
2026-07-18 10:04:26 +04:00

29 lines
1.3 KiB
Docker

# syntax=docker/dockerfile:1
# Базовые образы вынесены в ARG — если у вас есть корпоративный Artifactory (как в примере
# artifactory.emias.ru/docker/maven, artifactory.emias.ru/docker/emiasos-openjdk), просто
# переопределите их при сборке:
# docker build \
# --build-arg BUILD_IMAGE=artifactory.emias.ru/docker/maven:3.8.6-openjdk-11 \
# --build-arg RUNTIME_IMAGE=artifactory.emias.ru/docker/emiasos-openjdk:11 \
# -t fuel-notifier:latest .
ARG BUILD_IMAGE=maven:3.8.6-eclipse-temurin-11
ARG RUNTIME_IMAGE=eclipse-temurin:11-jre-jammy
FROM ${BUILD_IMAGE} AS build
RUN mkdir -p /build/source
COPY . /build/source
WORKDIR /build/source
# Проект не мультимодульный (в отличие от примера с -pl startup,db_helper,export) —
# собираем целиком одним модулем.
RUN mvn clean package
# Образ сервиса fuel-notifier
FROM ${RUNTIME_IMAGE} AS fuelbot
RUN useradd --system --create-home --shell /usr/sbin/nologin appuser
COPY --from=build /build/source/target/fuel-notifier.jar /data/app/fuel-notifier.jar
WORKDIR /data/app
USER appuser
EXPOSE 8080
ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar /data/app/fuel-notifier.jar"]