Build in docker
This commit is contained in:
parent
f76cea785f
commit
4174c6d584
8 changed files with 139 additions and 3 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -1,3 +1,6 @@
|
||||||
|
7h96bfno.000/
|
||||||
|
linux-amd64.tgz
|
||||||
|
conf/ervu-sign-module.conf
|
||||||
CMakeFiles/
|
CMakeFiles/
|
||||||
CMakeLists.txt.user
|
CMakeLists.txt.user
|
||||||
src/config.h
|
src/config.h
|
||||||
|
|
|
||||||
|
|
@ -65,6 +65,7 @@ MESSAGE ("")
|
||||||
CONFIGURE_FILE (${SOURCE_DIR}/config.h.in ${SOURCE_DIR}/config.h)
|
CONFIGURE_FILE (${SOURCE_DIR}/config.h.in ${SOURCE_DIR}/config.h)
|
||||||
|
|
||||||
SET (CRYPTOPRO_INCLUDE_DIRS
|
SET (CRYPTOPRO_INCLUDE_DIRS
|
||||||
|
/opt/cprocsp/include
|
||||||
/opt/cprocsp/include/cpcsp
|
/opt/cprocsp/include/cpcsp
|
||||||
/opt/cprocsp/include/pki
|
/opt/cprocsp/include/pki
|
||||||
)
|
)
|
||||||
|
|
|
||||||
55
Dockerfile.micord
Normal file
55
Dockerfile.micord
Normal file
|
|
@ -0,0 +1,55 @@
|
||||||
|
ARG BUILDER_IMAGE=repo.micord.ru/alt/alt-cprocsp:c10f1-5.0.13000-20240827
|
||||||
|
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 /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
|
||||||
|
|
||||||
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
|
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get -y install glib2 libfcgi \
|
||||||
|
&& apt-get clean \
|
||||||
|
&& rm -f /var/cache/apt/*.bin \
|
||||||
|
&& rm -f /var/lib/apt/lists/update* \
|
||||||
|
&& chmod +x /entrypoint.sh \
|
||||||
|
&& groupadd --system --gid 500 ervu \
|
||||||
|
&& adduser --system --no-create-home --uid 500 --gid 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
|
||||||
|
|
||||||
|
#VOLUME /var/opt/cprocsp/keys/ervu/7h96bfno.000
|
||||||
|
|
||||||
|
EXPOSE 9009
|
||||||
|
|
||||||
|
USER ervu
|
||||||
|
|
||||||
|
ENTRYPOINT ["/entrypoint.sh"]
|
||||||
|
|
@ -3,12 +3,11 @@
|
||||||
|
|
||||||
[fcgi]
|
[fcgi]
|
||||||
fcgi_listen_port = 9009
|
fcgi_listen_port = 9009
|
||||||
#fcgi_listen_host = 127.0.0.1
|
fcgi_listen_host = 127.0.0.1
|
||||||
#fcgi_thread_pool_size = 1
|
#fcgi_thread_pool_size = 1
|
||||||
|
|
||||||
[sign]
|
[sign]
|
||||||
#location = /sign
|
#location = /sign
|
||||||
cp_file = libcapi20.so
|
cp_file = /opt/cprocsp/lib/amd64/libcapi20.so
|
||||||
signer_subject = signer@example.ru
|
signer_subject = signer@example.ru
|
||||||
pin = ****
|
pin = ****
|
||||||
|
|
||||||
9
conf/nginx-docker.conf
Normal file
9
conf/nginx-docker.conf
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name localhost;
|
||||||
|
|
||||||
|
location = /sign {
|
||||||
|
fastcgi_pass ervu-sign-module:9009;
|
||||||
|
include fastcgi_params;
|
||||||
|
}
|
||||||
|
}
|
||||||
43
conf/nginx.conf
Normal file
43
conf/nginx.conf
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
# load dynamic nginx modules
|
||||||
|
include /etc/nginx/modules-enabled.d/*.conf;
|
||||||
|
|
||||||
|
# see http://nginx.net for info & docs
|
||||||
|
|
||||||
|
worker_processes 10;
|
||||||
|
|
||||||
|
error_log /var/log/nginx/error.log;
|
||||||
|
|
||||||
|
events {
|
||||||
|
worker_connections 1024;
|
||||||
|
}
|
||||||
|
|
||||||
|
include /etc/nginx/conf-enabled.d/*.conf;
|
||||||
|
|
||||||
|
http {
|
||||||
|
proxy_temp_path /var/spool/nginx/tmp/proxy;
|
||||||
|
fastcgi_temp_path /var/spool/nginx/tmp/fastcgi;
|
||||||
|
client_body_temp_path /var/spool/nginx/tmp/client;
|
||||||
|
|
||||||
|
include /etc/nginx/mime.types;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
|
||||||
|
sendfile on;
|
||||||
|
|
||||||
|
gzip on;
|
||||||
|
|
||||||
|
# text/html doesn't need to be defined there, it's compressed always
|
||||||
|
gzip_types text/plain text/css text/xml application/x-javascript application/atom+xml;
|
||||||
|
|
||||||
|
# gzip_comp_level 9;
|
||||||
|
include /etc/nginx/sites-enabled.d/*.conf;
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name localhost;
|
||||||
|
|
||||||
|
location = /sign {
|
||||||
|
fastcgi_pass localhost:9009;
|
||||||
|
include fastcgi_params;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
16
docker-compose.yaml
Normal file
16
docker-compose.yaml
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
services:
|
||||||
|
ervu-sign-module:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: Dockerfile.micord
|
||||||
|
volumes:
|
||||||
|
- ./7h96bfno.000:/home/ervu/keys/7h96bfno.000
|
||||||
|
- ./conf/ervu-sign-module.conf:/etc/ervu-sign-module.conf
|
||||||
|
nginx:
|
||||||
|
image: nginx:latest
|
||||||
|
links:
|
||||||
|
- ervu-sign-module
|
||||||
|
ports:
|
||||||
|
- "28080:80"
|
||||||
|
volumes:
|
||||||
|
- ./conf/nginx-docker.conf:/etc/nginx/conf.d/default.conf
|
||||||
10
entrypoint.sh
Normal file
10
entrypoint.sh
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ ! -d /var/opt/cprocsp/keys/ervu ];
|
||||||
|
then mkdir -m 700 /var/opt/cprocsp/keys/ervu
|
||||||
|
cp -r /home/ervu/keys/* /var/opt/cprocsp/keys/ervu/
|
||||||
|
chown -R ervu:ervu /var/opt/cprocsp/keys/ervu
|
||||||
|
fi
|
||||||
|
|
||||||
|
/opt/cprocsp/bin/amd64/csptest -absorb -certs -autoprov
|
||||||
|
/opt/ervu-sign-module/ervu-sign-module
|
||||||
Loading…
Add table
Add a link
Reference in a new issue