Files
2026-10-09 15:28:00 +03:00

85 lines
2.5 KiB
Docker

FROM debian:12-slim
# Arguments for build image
ARG S6_OVERLAY_VERSION=3.2.1.0
ARG SERVER_VERSION=8.3.27.2342
# 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/license/ /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}