Требования к базовому образу#
В качестве базового образа может использоваться Alt Linux или Red Hat Universal Base Image 8 Minimal. Для работы приложения необходимы следующие пакеты:
java-common
java-17-openjdk-headless
coreutils
openssl
which
unzip (может входить в число базовых)
hostname (может входить в число базовых)
Следующий пакет не является обязательным, но может использоваться при настройке взаимодействия с другими системами:
traceroute
При сборке использовался образ ALT 8 SP Server (cliff). Пример Dockerfile для сборки базового образа c Alt Linux:
FROM {my.company}/path/to/alt-sp8/clean:v0.5.15
RUN apt-get -y update && \
apt-get install -y java-common java-17-openjdk-headless coreutils openssl which traceroute && \
apt-get clean all
При сборке используется образ Red Hat Enterprise Linux 8.7 (Ootpa). Пример Dockerfile для сборки базового образа c Red Hat Universal Base Image 8 Minimal:
FROM registry.access.redhat.com/ubi8-minimal
RUN microdnf update -y && \
microdnf install -y --nodocs unzip java-17-openjdk-headless glibc-langpack-en hostname openssl which traceroute && microdnf clean all && rm -rf /var/cache/yum/*
При сборке используется образ Platform V SberLinux OS Server (SLO). Пример Dockerfile для сборки базового образа:
FROM {my.company}/path/to/sblnxos/container-8-ubi:8.8-172
COPY sbtsbel.repo /etc/yum.repos.d/
RUN dnf install -y --setopt=install_weak_deps=0 --setopt=tsflags=nodocs \
unzip \
procps-ng \
java-17-openjdk-devel \
glibc-langpack-en \
hostname \
openssl \
which \
traceroute \
findutils \
&& dnf clean all
ENV \
LANG="C.utf8" \
TZ="Europe/Moscow" \
JAVA_HOME="/usr/lib/jvm/java-17" \
JAVA_VENDOR="openjdk" \
JAVA_VERSION="17"
RUN source /etc/environment
Ссылку на данный образ с установленными пакетами необходимо указать в переменной BASE_IMAGE в Dockerfile, который поставляется в дистрибутиве.
#Пример:
#ARG BASE_IMAGE={my.company}/path/to/base/alt-sp8:v0.5.15
ARG BASE_IMAGE=<Ссылка на docker-образ в Nexus>
FROM ${BASE_IMAGE} AS build-env
ENV KEYCLOAK_VERSION 22.0.3