# Let's Encrypt Use [acme.sh](https://github.com/Neilpang/acme.sh/) for wholly self-contained Let's Encrypt certificates. This assumes CloudFlare DNS is used for authentication. *Note: You probably want to use a DNS provider/API so you don't have to expose a service to the outside world* *NOTE: You may want to use a filesystem on a USB disk instead of /var for the volumes setup in the below Docker command(s) to help reduce writes to the micro sd card* ## Dependencies ``` bash apt update apt install jq ``` ## Prep Grab the acme.sh Dockerfile and update it to work with arm (32 or 64). ``` bash mkdir -p /root/docker/acme.sh cd /root/docker/acme.sh wget https://raw.githubusercontent.com/Neilpang/acme.sh/master/Dockerfile sed -i '1s/^/ARG ALPINE=alpine:3.6\n/' Dockerfile sed -i '/FROM/c\FROM $ALPINE' Dockerfile mkdir /var/acme.sh chmod 700 /var/acme.sh ``` ## Setup / Run Setup a basic update/run script with the adjusted upstream Dockerfile ``` bash cat > /root/docker/acme.sh/acme.sh <