FROM debian:12-slim

# Arguments for build image
ARG S6_OVERLAY_VERSION=3.2.1.0
ARG SERVER_VERSION 8.3.24.1586

# Variables For Container
# Common
ENV LANG=ru_RU.UTF-8
ENV LC_ALL=ru_RU.UTF-8
ENV TZ=Europe/Moscow
ENV USER=www-data
# Server
ENV SERVER_VERSION=${SERVER_VERSION}
ENV BASES_DIR=/bases
ENV WORKDIR=/opt/1cv8/x86_64/${SERVER_VERSION}/
ENV LIC_DIR=/var/1C/licenses
ENV JAVA_HOME=/opt/1cv8/x86_64/${SERVER_VERSION}/jre/

# add contrib repo for debian 13 and install requiments
RUN sed -i '/Components:/s/$/ contrib/' /etc/apt/sources.list.d/debian.sources
RUN apt-get -qq update \
  && apt-get -qq install --yes --no-install-recommends \
    ca-certificates \
    wget \
    locales \
    tzdata \
    procps \
    fontconfig \
    imagemagick \
    cabextract \
    ttf-mscorefonts-installer \
    xz-utils \
    libssh-4 \
    iproute2 \
    apache2 \
    libwebkit2gtk-4.0-37 \
    gawk \
  && apt-get clean && apt-get autoremove

# Set locale and timezone
RUN echo "${LANG} UTF-8" > /etc/locale.gen \
  && locale-gen ${LANG} \
  && update-locale LANG=${LANG} \  
  && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

# S6 overlay install
ADD https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz /tmp
RUN tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz
ADD https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-x86_64.tar.xz /tmp
RUN tar -C / -Jxpf /tmp/s6-overlay-x86_64.tar.xz
	
# Install 1C Server and license util
ADD ./distr/setup-full-${SERVER_VERSION}-x86_64.run /tmp/distr/1c/
ADD ./distr/1c_enterprise_license_tools_0.15.0_2_linux_x86_64.tar.gz /tmp/distr/license/
RUN  /tmp/distr/1c/setup-full-${SERVER_VERSION}-x86_64.run  \
      --mode unattended \
      --enable-components \
        ws,liberica_jre,v8_install_deps,client_thin_fib \
      --disable-components \
        client_full 
RUN /tmp/distr/license/1ce-installer-cli install --ignore-signature-warnings 
RUN rm -rf /tmp/distr/* 

# 1c exchange folder 
RUN mkdir -p /1cshare && chown -R ${USER}:${USER} /1cshare

# Apache owns folders
RUN mkdir --mode=770 --parents /var/1C/licenses
RUN chown -R ${USER}:${USER} /var/cache/apache2/ /var/cache/fontconfig/ /var/log/apache2 /var/1C /var/www 

#COPY ./services.d /etc/services.d 
COPY ./entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
ENTRYPOINT [ "/entrypoint.sh" ]
# S6 Entrypoint
#ENTRYPOINT ["/init"]
# CMD [ "apache2ctl", "-D", "FOREGROUND" ]
EXPOSE 1540-1541 1545 1560-1591
EXPOSE 80 443

VOLUME ${BASES_DIR}
VOLUME ${LIC_DIR}
