Adds better support for acme.sh install out of the box

This commit is contained in:
Jamie Curnow
2022-01-11 11:01:29 +10:00
parent 428eed814c
commit 7b583d816b
2 changed files with 29 additions and 3 deletions
+14 -3
View File
@@ -9,8 +9,19 @@ ENV CURL_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt
COPY ./files/.bashrc.acmesh /root/.bashrc
# acme.sh
RUN mkdir -p /data/acme.sh \
&& curl -o /bin/acme.sh 'https://raw.githubusercontent.com/acmesh-official/acme.sh/master/acme.sh' \
&& chmod +x /bin/acme.sh
RUN curl -o /tmp/acme.sh 'https://raw.githubusercontent.com/acmesh-official/acme.sh/master/acme.sh' \
&& chmod +x /tmp/acme.sh
ENV ACMESH_CONFIG_HOME=/data/.acme.sh/config \
ACMESH_HOME=/data/.acme.sh \
CERT_HOME=/data/.acme.sh/certs \
LE_CONFIG_HOME=/data/.acme.sh/config \
LE_WORKING_DIR=/data/.acme.sh
# this wrapper handles all the setup required for acme.sh and running commands for it
COPY ./files/acme.sh-wrapper /bin/acme.sh
# Test that the wrapper script is working
RUN /bin/acme.sh -h
LABEL org.label-schema.cmd="docker run --rm -ti nginxproxymanager/nginx-full:acmesh"
+15
View File
@@ -0,0 +1,15 @@
#!/bin/bash -e
# Ensure acme.sh dirs exist
mkdir -p "$ACMESH_HOME" "$ACMESH_CONFIG_HOME" "$CERT_HOME" "$LE_CONFIG_HOME" "$LE_WORKING_DIR"
ACMESH_SCRIPT=/data/.acme.sh/acme.sh
# Check for existence of $ACME_SH_SCRIPT
if ! [ -f "$ACMESH_SCRIPT" ]; then
echo "$ACMESH_SCRIPT does not exist, installing acme.sh ..."
cd /tmp
./acme.sh --install --force --home "$ACMESH_HOME" --cert-home "$CERT_HOME" --config-home "$ACMESH_CONFIG_HOME"
fi
$ACMESH_SCRIPT --config-home "$ACMESH_CONFIG_HOME" "$@"