49 lines
1.9 KiB
Docker
49 lines
1.9 KiB
Docker
FROM node:lts-bullseye-slim
|
|
|
|
LABEL maintainer="Robert Kaussow <mail@thegeeklab.de>"
|
|
LABEL org.opencontainers.image.authors="Robert Kaussow <mail@thegeeklab.de>"
|
|
LABEL org.opencontainers.image.title="lhci"
|
|
LABEL org.opencontainers.image.url="https://gitea.rknet.org/docker/lhci"
|
|
LABEL org.opencontainers.image.source="https://gitea.rknet.org/docker/lhci"
|
|
LABEL org.opencontainers.image.documentation="https://gitea.rknet.org/docker/lhci"
|
|
|
|
ARG BUILD_VERSION
|
|
ARG YQ_VERSION
|
|
|
|
# renovate: datasource=npm depName=@lhci/cli
|
|
ENV LHCI_VERSION="${BUILD_VERSION:-0.8.1}"
|
|
# renovate: datasource=github-releases depName=mikefarah/yq
|
|
ENV YQ_VERSION="${YQ_VERSION:-v4.12.1}"
|
|
|
|
ENV LHCI_BASE_DIR=/drone/src \
|
|
FORCE_COLOR=true \
|
|
NPM_CONFIG_LOGLEVEL=error \
|
|
PATH=/usr/bin:$PATH
|
|
|
|
ADD overlay/ /
|
|
|
|
RUN apt-get update && apt-get install -y git curl wget gnupg jq && \
|
|
curl -SsL -o /usr/local/bin/yq "https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_linux_amd64" && \
|
|
chmod 755 /usr/local/bin/yq && \
|
|
wget -qO - "https://dl-ssl.google.com/linux/linux_signing_key.pub" | apt-key add - && \
|
|
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | tee "/etc/apt/sources.list.d/google.list" && \
|
|
apt-get update && apt-get install --no-install-recommends -y google-chrome-stable && \
|
|
LHCI_VERSION="${LHCI_VERSION##v}" && \
|
|
LHCI_MAJOR="${LHCI_VERSION%%.*}" && \
|
|
if [ -z "${LHCI_MAJOR//[0-9]}" ] && [ -n "$LHCI_MAJOR" ]; then \
|
|
echo "Installing lhci version '$LHCI_VERSION' ..." && \
|
|
npm install -g @lhci/cli@"$LHCI_VERSION"; \
|
|
else \
|
|
echo "Installing latest lhci ..." && \
|
|
npm install -g @lhci/cli; \
|
|
fi && \
|
|
npm install -g lighthouse && \
|
|
rm -rf /var/lib/apt/lists/* && \
|
|
rm -rf /tmp/* && \
|
|
rm -rf /root/.cache/
|
|
|
|
USER root
|
|
CMD []
|
|
WORKDIR /drone/src
|
|
ENTRYPOINT ["/usr/bin/lhci", "autorun"]
|