ervu-sign-module/Dockerfile
Pavel Zilke e26dd65724 Docker
2024-08-27 12:13:37 +03:00

68 lines
1.6 KiB
Docker

ARG BUILDER_IMAGE=registry.altlinux.org/basealt/altsp:c10f1
ARG RUNTIME_IMAGE=registry.altlinux.org/basealt/altsp:c10f1
FROM ${BUILDER_IMAGE} AS builder
RUN apt-get update \
&& apt-get -y install \
crontabs \
glibc-locales \
unzip \
glib2-devel \
libfcgi-devel \
cmake \
make \
gcc \
gcc10
WORKDIR /distr
COPY linux-amd64.tgz .
# Install CryptoPRO CSP
RUN tar -xf linux-amd64.tgz \
&& cd linux-amd64 \
&& ./install.sh \
&& apt-get install ./cprocsp-pki-cades-64-*.rpm \
&& apt-get install ./lsb-cprocsp-devel-*.rpm \
&& cd .. && rm -rf linux-amd64 linux-amd64.tgz
WORKDIR /build
COPY src src
COPY CMakeLists.txt CMakeLists.txt
RUN mkdir -p .build \
&& cd .build \
&& cmake .. \
&& make -j4
FROM ${RUNTIME_IMAGE}
ENV TZ=Europe/Moscow
RUN apt-get update \
&& apt-get -y install mc glib2 libfcgi nginx \
&& apt-get clean \
&& rm -f /var/cache/apt/*.bin \
&& rm -f /var/lib/apt/lists/update* \
&& adduser --system --no-create-home --user-group --uid 500 ervu
COPY --from=builder /usr/lib/locale/ru_RU.utf8 /usr/lib/locale/ru_RU.utf8
COPY --from=builder /etc/opt/cprocsp /etc/opt/cprocsp
COPY --from=builder /opt/cprocsp /opt/cprocsp
COPY --from=builder /var/opt/cprocsp /var/opt/cprocsp
COPY --from=builder /build/.build/ervu-sign-module /opt/ervu-sign-module/ervu-sign-module
COPY entrypoint.sh /entrypoint.sh
RUN mkdir -p /var/opt/cprocsp/keys/ervu/7h96bfno.000 \
&& chown -R ervu:ervu /var/opt/cprocsp/keys/ervu \
&& chmod +x /entrypoint.sh
VOLUME /var/opt/cprocsp/keys/ervu/7h96bfno.000
EXPOSE 9009
USER ervu
ENTRYPOINT ["/entrypoint.sh"]