-FROM alpine:3.12
+FROM alpine:3.17
-RUN apk update -f \
- && apk --no-cache add -f \
+RUN apk --no-cache add -f \
openssl \
openssh-client \
coreutils \
bind-tools \
curl \
+ sed \
socat \
tzdata \
oath-toolkit-oathtool \
tar \
- && rm -rf /var/cache/apk/*
+ libidn \
+ jq \
+ cronie
ENV LE_CONFIG_HOME /acme.sh
ENV AUTO_UPGRADE $AUTO_UPGRADE
#Install
-ADD ./ /install_acme.sh/
+COPY ./ /install_acme.sh/
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/
-RUN ln -s /root/.acme.sh/acme.sh /usr/local/bin/acme.sh && crontab -l | grep acme.sh | sed 's#> /dev/null##' | crontab -
+RUN ln -s /root/.acme.sh/acme.sh /usr/local/bin/acme.sh && crontab -l | grep acme.sh | sed 's#> /dev/null#> /proc/1/fd/1 2>/proc/1/fd/2#' | crontab -
RUN for verb in help \
version \
revoke \
remove \
list \
+ info \
showcsr \
install-cronjob \
uninstall-cronjob \
deactivate-account \
set-notify \
set-default-ca \
+ set-default-chain \
; do \
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} \
; done
RUN printf "%b" '#!'"/usr/bin/env sh\n \
if [ \"\$1\" = \"daemon\" ]; then \n \
- trap \"echo stop && killall crond && exit 0\" SIGTERM SIGINT \n \
- crond && while true; do sleep 1; done;\n \
+ exec crond -n -s -m off \n \
else \n \
exec -- \"\$@\"\n \
-fi" >/entry.sh && chmod +x /entry.sh
+fi\n" >/entry.sh && chmod +x /entry.sh
VOLUME /acme.sh