Browse Source

Updated ACME client version

master 0.1.4
Fábio Kaiser Rauber 4 years ago
parent
commit
13ce7f5faa
  1. 10
      Dockerfile
  2. 34
      config
  3. 9
      docker-entrypoint.sh

10
Dockerfile

@ -1,24 +1,24 @@
FROM library/alpine:3.5 FROM library/alpine:3.14
# Credit: @frol for python3 - https://github.com/frol/docker-alpine-python3/blob/master/Dockerfile # Credit: @frol for python3 - https://github.com/frol/docker-alpine-python3/blob/master/Dockerfile
# deps - python3 openssl curl sed grep mktemp # deps - python3 openssl curl sed grep mktemp
# boto3 - AWS SDK for python # boto3 - AWS SDK for python
RUN apk add --no-cache --virtual .build-deps git \ RUN apk add --no-cache --virtual .build-deps git build-base libffi-dev openssl-dev cargo \
&& apk add --no-cache --virtual .dehydrated-rundeps python3 bash openssl curl \ && apk add --no-cache --virtual .dehydrated-rundeps python3-dev py-pip bash openssl curl \
&& pip3 install --upgrade pip boto3 dns-lexicon dns-lexicon[route53] dns-lexicon[transip] \ && pip3 install --upgrade pip boto3 dns-lexicon dns-lexicon[route53] dns-lexicon[transip] \
&& rm -r /root/.cache \ && rm -r /root/.cache \
&& cd /tmp \ && cd /tmp \
&& git clone https://github.com/lukas2511/dehydrated.git \ && git clone https://github.com/lukas2511/dehydrated.git \
&& cd dehydrated \ && cd dehydrated \
&& git checkout tags/v0.4.0 \ && git checkout tags/v0.6.5 \
&& cd .. \ && cd .. \
&& chmod a+x dehydrated/dehydrated \ && chmod a+x dehydrated/dehydrated \
&& mv dehydrated/dehydrated /usr/bin/ \ && mv dehydrated/dehydrated /usr/bin/ \
&& git clone https://github.com/AnalogJ/lexicon.git \ && git clone https://github.com/AnalogJ/lexicon.git \
&& cd lexicon \ && cd lexicon \
&& git checkout tags/v2.1.8 \ && git checkout tags/v3.3.17 \
&& cd .. \ && cd .. \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
&& apk del .build-deps && apk del .build-deps

34
config

@ -10,6 +10,12 @@
# Default values of this config are in comments # # Default values of this config are in comments #
######################################################## ########################################################
# Which user should dehydrated run as? This will be implictly enforced when running as root
#DEHYDRATED_USER=
# Which group should dehydrated run as? This will be implictly enforced when running as root
#DEHYDRATED_GROUP=
# Resolve names to addresses of IP version only. (curl) # Resolve names to addresses of IP version only. (curl)
# supported values: 4, 6 # supported values: 4, 6
# default: <unset> # default: <unset>
@ -18,6 +24,13 @@
# Path to certificate authority (default: https://acme-v01.api.letsencrypt.org/directory) # Path to certificate authority (default: https://acme-v01.api.letsencrypt.org/directory)
CA="https://acme-staging.api.letsencrypt.org/directory" CA="https://acme-staging.api.letsencrypt.org/directory"
# Path to old certificate authority
# Set this value to your old CA value when upgrading from ACMEv1 to ACMEv2 under a different endpoint.
# If dehydrated detects an account-key for the old CA it will automatically reuse that key
# instead of registering a new one.
# default: https://acme-v01.api.letsencrypt.org/directory
#OLDCA="https://acme-v01.api.letsencrypt.org/directory"
# Path to license agreement (default: https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf) # Path to license agreement (default: https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf)
#LICENSE="https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf" #LICENSE="https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf"
@ -51,6 +64,12 @@ KEYSIZE="4096"
# Path to openssl config file (default: <unset> - tries to figure out system default) # Path to openssl config file (default: <unset> - tries to figure out system default)
#OPENSSL_CNF= #OPENSSL_CNF=
# Path to OpenSSL binary (default: "openssl")
#OPENSSL="openssl"
# Extra options passed to the curl binary (default: <unset>)
#CURL_OPTS=
# Program or function called in certain situations # Program or function called in certain situations
# #
# After generating the challenge-response, or after failed challenge (in this case altname is empty) # After generating the challenge-response, or after failed challenge (in this case altname is empty)
@ -86,3 +105,18 @@ KEY_ALGO=secp384r1
# Option to add CSR-flag indicating OCSP stapling to be mandatory (default: no) # Option to add CSR-flag indicating OCSP stapling to be mandatory (default: no)
#OCSP_MUST_STAPLE="no" #OCSP_MUST_STAPLE="no"
# Fetch OCSP responses (default: no)
#OCSP_FETCH="no"
# OCSP refresh interval (default: 5 days)
#OCSP_DAYS=5
# Issuer chain cache directory (default: $BASEDIR/chains)
#CHAINCACHE="${BASEDIR}/chains"
# Automatic cleanup (default: no)
#AUTO_CLEANUP="no"
# ACME API version (default: auto)
#API=auto

9
docker-entrypoint.sh

@ -14,14 +14,17 @@ if [ "${LOG}" == "TRUE" ]; then
fi fi
if [ "${LE_ENV}" == 'production' ]; then if [ "${LE_ENV}" == 'production' ]; then
echo "***** ${LE_ENV} *****" echo "***** production *****"
sed -i 's@CA=.*@CA="https://acme-v01.api.letsencrypt.org/directory"@g' /etc/dehydrated/config sed -i 's@CA=.*@CA="https://acme-v02.api.letsencrypt.org/directory"@g' /etc/dehydrated/config
else else
echo "***** staging *****" echo "***** staging *****"
fi fi
# comma = new line # comma = new line
if [ "${LE_DOMAIN}" ]; then if [ -z ${LE_DOMAIN+x} ]; then
echo "***** Skipping domains.txt *****"
echo "Ensure --domain arg is set"
else
echo "***** Creating domains.txt *****" echo "***** Creating domains.txt *****"
echo ${LE_DOMAIN} | sed -e $'s/,/\\\n/g' > /etc/dehydrated/domains.txt echo ${LE_DOMAIN} | sed -e $'s/,/\\\n/g' > /etc/dehydrated/domains.txt
cat /etc/dehydrated/domains.txt cat /etc/dehydrated/domains.txt

Loading…
Cancel
Save