FROM registry.access.redhat.com/ubi9/ubi:latest

# Required versions
ARG JAZ_VERSION=7.2.2-1
ARG JAZ_RPM=jobarranger-server-${JAZ_VERSION}.el9.x86_64.rpm

LABEL org.opencontainers.image.vendor="Daiwa Institute of Research Ltd." \
      org.opencontainers.image.authors="" \
      org.opencontainers.image.url="https://www.jobarranger.info/" \
      org.opencontainers.image.licenses="GPL v2.0" \
      org.opencontainers.image.documentation="https://www.jobarranger.info/document/doku.php?id=start" \
      org.opencontainers.image.version="${JAZ_VERSION}"

# Stop signal
STOPSIGNAL SIGTERM

# Users and directories
RUN set -eux; \
    groupadd -g 1995 --system zabbix && \
    adduser -r -u 1997 -g zabbix -G dialout,root -d /var/lib/zabbix -s /sbin/nologin zabbix && \
    mkdir -p /var/lib/zabbix /etc/jobarranger/locale /usr/share/doc/jobarranger-server /var/lib/jobarranger/server

# Copy the require packages
COPY ["./${JAZ_RPM}", "/tmp/"]
COPY ["./artifacts/epel-release-9-10.el9.noarch.rpm", "/tmp/"]
COPY ["./artifacts/zabbix-release-latest-8.0.el9.noarch.rpm", "/tmp/"]
COPY --chmod=0755 ["./artifacts/tini", "/sbin/tini"]

# Install required packages: Zabbix repo, zabbix-sender, logrotate, libvterm, tini
RUN set -eux; \
    rpm -Uvh /tmp/zabbix-release-latest-8.0.el9.noarch.rpm; \
    rpm -Uvh /tmp/epel-release-9-10.el9.noarch.rpm; \
    dnf -y install --setopt=tsflags=nodocs \
        zabbix-sender \
        logrotate \
        --enablerepo=epel libvterm; \
    dnf clean all; \
    rm -rf /var/cache/dnf /var/lib/dnf/* 

# Install Job Arranger RPM
RUN set -eux; \
    rpm -ivh /tmp/${JAZ_RPM}; \
    chown -R zabbix:root /etc/jobarranger /var/lib/zabbix; \
    chgrp -R 0 /etc/jobarranger; chmod -R g=u /etc/jobarranger; \
    rm -rf /tmp/*.rpm 

COPY ["./entrypoint/docker-entrypoint.sh", "/usr/bin/"]
RUN ["chmod", "+x", "/usr/bin/docker-entrypoint.sh"]

# Setup container
EXPOSE 10061/tcp
WORKDIR /var/lib/zabbix
