diff --git a/Dockerfile b/Dockerfile index 4825939..18d0bfe 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,27 +1,37 @@ FROM ubuntu:22.04 -RUN echo "deb http://packages.lab50.net/okular jammy main non-free" > /etc/apt/sources.list.d/okulargost.list -RUN apt update && apt install -y wget libgtk-3-0 okular-csp-utils -# COPY 3party/cprocsp/linux-amd64_deb.tgz /tmp/src/ -# RUN cd /tmp/src && \ -# tar -xf linux-amd64_deb.tgz && \ -# linux-amd64_deb/install.sh && \ -# dpkg -i linux-amd64_deb/cprocsp-pki-cades-64*.deb && \ -# dpkg -i linux-amd64_deb/cprocsp-rdr-gui-gtk-64*.deb && \ +RUN apt update && apt install -y wget libgtk-3-0 libpcsclite-dev pcscd +RUN wget -q -O /etc/apt/trusted.gpg.d/lab50.gpg http://packages.lab50.net/lab50.gpg +RUN echo 'deb http://packages.lab50.net/okular jammy main non-free' > /etc/apt/sources.list.d/okulargost.list +COPY 3party/cprocsp/linux-amd64_deb.tgz /tmp/src/ +RUN cd /tmp/src && \ + tar -xf linux-amd64_deb.tgz && \ + linux-amd64_deb/install.sh && \ + dpkg -i linux-amd64_deb/cprocsp-pki-cades-64*.deb && \ + dpkg -i linux-amd64_deb/cprocsp-rdr-* && \ + # делаем симлинки + cd /bin && \ + ln -s /opt/cprocsp/bin/amd64/certmgr && \ + ln -s /opt/cprocsp/bin/amd64/cpverify && \ + ln -s /opt/cprocsp/bin/amd64/cryptcp && \ + ln -s /opt/cprocsp/bin/amd64/csptest && \ + ln -s /opt/cprocsp/bin/amd64/csptestf && \ + ln -s /opt/cprocsp/bin/amd64/der2xer && \ + ln -s /opt/cprocsp/bin/amd64/inittst && \ + ln -s /opt/cprocsp/bin/amd64/wipefile && \ + ln -s /opt/cprocsp/sbin/amd64/cpconfig && \ + #прибираемся + rm -rf /tmp/src -# # делаем симлинки -# cd /bin && \ -# ln -s /opt/cprocsp/bin/amd64/certmgr && \ -# ln -s /opt/cprocsp/bin/amd64/cpverify && \ -# ln -s /opt/cprocsp/bin/amd64/cryptcp && \ -# ln -s /opt/cprocsp/bin/amd64/csptest && \ -# ln -s /opt/cprocsp/bin/amd64/csptestf && \ -# ln -s /opt/cprocsp/bin/amd64/der2xer && \ -# ln -s /opt/cprocsp/bin/amd64/inittst && \ -# ln -s /opt/cprocsp/bin/amd64/wipefile && \ -# ln -s /opt/cprocsp/sbin/amd64/cpconfig && \ -# # прибираемся -# rm -rf /tmp/src +COPY 3party/okular/install.sh /tmp/ +RUN bash /tmp/install.sh && rm -fv /tmp/install.sh +RUN apt update && apt install -y okular-csp-utils -# COPY 3party/okular/install.sh /tmp/ -# RUN bash /tmp/install.sh && rm -fv /tmp/install.sh \ No newline at end of file +RUN mkdir -p /root/.config +COPY license.key /license.key +RUN pdfcpro install-license /license.key +COPY Inter-Bold.ttf /usr/local/share/fonts/Inter-Bold.ttf + +COPY entrypoint.sh /entrypoint.sh + +ENTRYPOINT [ "/entrypoint.sh" ] \ No newline at end of file diff --git a/Inter-Bold.ttf b/Inter-Bold.ttf new file mode 100644 index 0000000..48d3f01 Binary files /dev/null and b/Inter-Bold.ttf differ diff --git a/entrypoint.sh b/entrypoint.sh new file mode 100755 index 0000000..d8ae754 --- /dev/null +++ b/entrypoint.sh @@ -0,0 +1,11 @@ +#!/bin/bash -x + +service pcscd start +cert=$(/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifyc -fq | grep Aktiv | awk -F'00 00' '{print $2}' | tr -d '\\') +/opt/cprocsp/bin/amd64/certmgr -inst -cont "${cert}" -store uMy +certmgr -list -store umy +SHA=$(certmgr -list -store umy | grep SHA | awk -F':' '{print $2}' | tr -d ' ') + +# pdfcpro sign /mnt/t/123.pdf -out /mnt/t/123_sign.pdf -cert ${SHA} -text "\n\t\tПодписано ЭП\n\t\t{subject/cn}\n\t\tСертификат {sha1}\n\t\tДействителен от {since} до {until}\n\t\tДата {date}\n\t\t{subject/t}\n\t\t{subject/fullname}\n\t\t" -fontfile /usr/local/share/fonts/Inter-Bold.ttf -fontsize 8 -x 2 -y 2 -w 96 -h 9 + +exec "$@" \ No newline at end of file diff --git a/license.key b/license.key new file mode 100644 index 0000000..e578514 --- /dev/null +++ b/license.key @@ -0,0 +1,22 @@ +-----BEGIN PGP MESSAGE----- + +owGbwMvMwMX4m2NrnreKjyDj6QN7khjSNt7+XK1UllpUnJmfp2SloGSopKOglJOZ +nJpXnArmJxmkmBmaJukamRpY6pqYp5noJqYkJeomWViamCdZmqYYGIG1FBTlp5Qm +l4C05GeX5iQW6RanFgHNRZKLR7IGJJyXmAu2IqbUwMTICEQap4JIE3MwOxFMGuji +l1YAUYZJCGljYzBpAVZqCCaNECIwbSD7U3MTM3NADsjLL07Ny853yCzRS8kv0QVi +vaJSkIriksSikmKQEiMDIxNdAwtdA7MQAwMrMIoCm1FRkFmUiqTEEqTEyNjK1BKI +wErySnOTUovi89PiocEKUm1Y28lkzMLAyMUgK6bIskDMKPAlS1X1ul379sDih5UJ +FDcMXJwCMJFVJvz/naTc7D4zPFV0Z8rd1HWtvfZuBsenCs1DXVpJ919fN5DamxEc +tPnJWy3X4JuP9+nsCIqXz1d4ofrd/NS7KB5RbX9Bxg9bV075eMOBsbLysJPOnnn9 +FbFf9nJ1bdro06nlmm0sHHx/UcHXDgbz1qcKcttnmZnxP81h19XzrZ5r4K27p3fm +4WbOdc+v56twRPJef5r+3znp3eLSWqsOtYZgy6vdRzcEJa18Yai76U/ODt2Nfw/x +7HTX2vvxa9Wcqo1pO/2P+kx3f3GTbXeyQUfVnb9FCyfm28kb/K7/76+hnuH3dvvU +feXvjJ7Oys9Sm3ybdd6HoBk3I3utbr/5YLM63zIoML3pYJX2izNLQ07tPfRg4u9t +J/iT//BGPF3zm3nb/hXimerFpxbsbg5cGZkfJR8n0rXE55yr/JV9mmohf4QPS2uX +nLLzerB4/1cz9s1Ca6Z/2OtnInHMhpXvxTNJpc5lcRe7e5q7+WUvGHSHPUjNeSQe +qSc7q5sxd/qBc82v5M0f9Eeqma5qP7nzgqZ55QP7KWKt51h6y/2PXemtO88sbF1r +GMqf/69hto1qaFsdi7vJnpN32+3+/nuycvKDOYlPuT4mnde9xv5n4luLDfeu/Ki2 +6GDxLivKP2fqZlVXYp295veBA8U337gnX3RMa9nm2dnS/otHUKQnsmraLZl3Ducl +V57lnFC7XEyhi1lFsMcv7Ai/sbP5PAA= +=FMIf +-----END PGP MESSAGE-----