FROM quay.io/keycloak/keycloak:22.0.0 as builder

# Устанавливаем рабочую директорию
WORKDIR /opt/keycloak

# Копируем конфигурационный файл
COPY keycloak.conf /opt/keycloak/conf/keycloak.conf

# Собираем Keycloak в optimized режиме с PostgreSQL
RUN /opt/keycloak/bin/kc.sh build --db=postgres

FROM quay.io/keycloak/keycloak:22.0.0

# Копируем собранную конфигурацию из builder stage
COPY --from=builder /opt/keycloak/ /opt/keycloak/

# Устанавливаем рабочую директорию
WORKDIR /opt/keycloak

# Копируем финальный конфигурационный файл
COPY keycloak.conf /opt/keycloak/conf/keycloak.conf

# Меняем владельца файлов
USER root
RUN chown -R keycloak:keycloak /opt/keycloak
USER keycloak

# Команда для запуска в optimized режиме
ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
CMD ["start", "--optimized"]