FROM golang:1.11.4 as envtpl ARG HTTP_PROXY= ARG HTTPS_PROXY= ARG http_proxy= ARG https_proxy= RUN apt-get update -y && apt-get install -y git RUN git clone https://github.com/subfuzion/envtpl /src \ && cd /src \ && git checkout v1.0.0 \ && CGO_ENABLED=0 GOOS=linux go build \ -ldflags "-X main.AppVersionMetadata=$(date -u +%s)" \ -a -installsuffix cgo -o ./bin/envtpl ./cmd/envtpl/. FROM alpine:3.10 ARG HTTP_PROXY= ARG HTTPS_PROXY= ARG http_proxy= ARG https_proxy= COPY --from=envtpl /src/bin/envtpl /usr/local/bin/envtpl RUN apk add --no-cache \ nss \ freetype \ freetype-dev \ harfbuzz \ ca-certificates \ ttf-freefont \ nodejs \ npm \ chromium RUN npm install -g lighthouse RUN PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install -g pa11y pa11y-reporter-html RUN adduser -D lighthouse COPY run-audit.sh /usr/local/bin/run-audit RUN chmod +x /usr/local/bin/run-audit COPY config.js.tmpl /home/lighthouse/config.js.tmpl COPY patty.json.tmpl /home/lighthouse/patty.json.tmpl WORKDIR /home/lighthouse RUN mkdir /home/lighthouse/reports RUN chown -R lighthouse: /home/lighthouse USER lighthouse CMD /usr/local/bin/run-audit