jekyllsitebuilder/Dockerfile

35 lines
1.0 KiB
Docker

# ruby:3.1-bullseye, pinned 2026-02-22
FROM ruby@sha256:4cc0e5aaa726f8c2cbf1dfc8e5ecd459dbfbebe44b5eee5da6f79ffcc1b6c36f AS builder
RUN apt-get update && apt-get install -y --no-install-recommends \
bsdmainutils \
build-essential \
make \
bundler \
ghostscript \
imagemagick \
libxml2-dev \
libxslt-dev \
pkg-config \
python3 \
xz-utils \
&& rm -rf /var/lib/apt/lists/*
# Node.js 20.18.3 LTS, pinned by sha256
RUN cd /tmp && \
curl -fsSLO https://nodejs.org/dist/v20.18.3/node-v20.18.3-linux-x64.tar.xz && \
echo "595bcc9a28e6d1ee5fc7277b5c3cb029275b98ec0524e162a0c566c992a7ee5c node-v20.18.3-linux-x64.tar.xz" | sha256sum -c - && \
tar -xJf node-v20.18.3-linux-x64.tar.xz -C /usr/local --strip-components=1 && \
rm node-v20.18.3-linux-x64.tar.xz
RUN npm install -g yarn && \
yarn global add prettier && \
npm install -g wrangler
ADD ./Gemfile* ./
RUN echo "gem: --no-ri --no-rdoc" > ~/.gemrc && \
yes | gem update --system && \
gem install bundler && \
bundle install