]> git.proxmox.com Git - mirror_acme.sh.git/blob - Dockerfile
Merge branch 'yandex' of github.com:non7top/acme.sh into yandex
[mirror_acme.sh.git] / Dockerfile
1 FROM alpine
2
3 RUN apk update -f \
4 && apk --no-cache add -f \
5 openssl \
6 curl \
7 netcat-openbsd \
8 && rm -rf /var/cache/apk/*
9
10 ENV LE_CONFIG_HOME /acme.sh
11
12 ENV AUTO_UPGRADE 1
13
14 #Install
15 ADD ./ /install_acme.sh/
16 RUN cd /install_acme.sh && ([ -f /install_acme.sh/acme.sh ] && /install_acme.sh/acme.sh --install || curl https://get.acme.sh | sh) && rm -rf /install_acme.sh/
17
18
19 RUN ln -s /root/.acme.sh/acme.sh /usr/local/bin/acme.sh && crontab -l | sed 's#> /dev/null##' | crontab -
20
21 RUN for verb in help \
22 version \
23 install \
24 uninstall \
25 upgrade \
26 issue \
27 signcsr \
28 deploy \
29 install-cert \
30 renew \
31 renew-all \
32 revoke \
33 remove \
34 list \
35 showcsr \
36 install-cronjob \
37 uninstall-cronjob \
38 cron \
39 toPkcs \
40 toPkcs8 \
41 update-account \
42 register-account \
43 create-account-key \
44 create-domain-key \
45 createCSR \
46 deactivate \
47 deactivate-account \
48 ; do \
49 printf -- "%b" "#!/usr/bin/env sh\n/root/.acme.sh/acme.sh --${verb} --config-home /acme.sh \"\$@\"" >/usr/local/bin/--${verb} && chmod +x /usr/local/bin/--${verb} \
50 ; done
51
52 RUN printf "%b" '#!'"/usr/bin/env sh\n \
53 if [ \"\$1\" = \"daemon\" ]; then \n \
54 trap \"echo stop && killall crond && exit 0\" SIGTERM SIGINT \n \
55 crond && while true; do sleep 1; done;\n \
56 else \n \
57 exec -- \"\$@\"\n \
58 fi" >/entry.sh && chmod +x /entry.sh
59
60 VOLUME /acme.sh
61
62 ENTRYPOINT ["/entry.sh"]
63 CMD ["--help"]