2023-07-13 18:13:07 +00:00
|
|
|
# syntax=docker/dockerfile:1
|
2023-05-05 09:24:28 +00:00
|
|
|
FROM ghcr.io/hadolint/hadolint:latest-alpine AS hadolint-binary
|
|
|
|
|
2023-07-13 18:13:07 +00:00
|
|
|
# Since we're building against edge at risk, it is important to note
|
|
|
|
# that anything might go wrong.
|
2023-05-05 09:24:28 +00:00
|
|
|
FROM alpine:edge AS buildkit
|
|
|
|
|
2023-07-13 18:13:07 +00:00
|
|
|
# Since hadolint isn't in the package repos for Alpineyet, we'll copying from the offical
|
|
|
|
# Docker image instead.
|
|
|
|
COPY --from=hadolint-binary /bin/hadolint /usr/bin/hadolint
|
|
|
|
|
|
|
|
ENV PACKAGES=/usr/local/lib/python3.11/site-packages
|
|
|
|
ENV PYTHONDONTWRITEBYTECODE=1
|
2023-03-24 17:26:49 +00:00
|
|
|
|
|
|
|
# https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#linux but for Alpine
|
2023-05-05 09:24:28 +00:00
|
|
|
# hadolint ignore=DL3018,DL3013
|
2023-03-31 16:14:39 +00:00
|
|
|
RUN apk add --no-cache \
|
2023-03-24 17:26:49 +00:00
|
|
|
cairo-dev \
|
|
|
|
freetype-dev \
|
|
|
|
libffi-dev \
|
|
|
|
jpeg-dev \
|
|
|
|
libpng-dev \
|
2023-03-31 16:14:39 +00:00
|
|
|
zlib-dev \
|
|
|
|
bash \
|
2023-05-05 09:24:28 +00:00
|
|
|
coreutils \
|
|
|
|
python3 \
|
|
|
|
py3-pip \
|
|
|
|
py3-wheel \
|
|
|
|
shellcheck \
|
2023-07-13 18:13:07 +00:00
|
|
|
gcc \
|
|
|
|
libffi-dev \
|
|
|
|
musl-dev \
|
|
|
|
nodejs \
|
|
|
|
npm \
|
|
|
|
yarn \
|
|
|
|
git \
|
|
|
|
git-fast-import \
|
|
|
|
openssh \
|
|
|
|
&& pip3 install --no-cache-dir \
|
2023-03-31 16:43:12 +00:00
|
|
|
mkdocs-material \
|
|
|
|
mkdocs-redirects \
|
2023-03-24 17:26:49 +00:00
|
|
|
mkdocs-git-revision-date-localized-plugin \
|
|
|
|
pillow \
|
2023-03-31 16:14:39 +00:00
|
|
|
cairosvg
|
2023-07-13 18:13:07 +00:00
|
|
|
|
|
|
|
# Trust directory, required for git >= 2.35.2
|
|
|
|
# Follows the docs for the Docker-based site build setup
|
|
|
|
RUN git config --global --add safe.directory /docs &&\
|
|
|
|
git config --global --add safe.directory /site
|
|
|
|
|
|
|
|
# Expose MkDocs development server port
|
|
|
|
EXPOSE 8000
|
|
|
|
|
|
|
|
COPY entrypoint.sh /usr/local/bin/entrypoint
|
|
|
|
ENTRYPOINT [ "/usr/local/bin/entrypoint" ]
|
|
|
|
CMD [ "serve", "--dev-addr=0.0.0.0:8000" ]
|