35 lines
1.0 KiB
Docker
35 lines
1.0 KiB
Docker
# ruby:3.1-bullseye, pinned 2026-02-22
|
|
# (ruby:3.1-buster is EOL; bullseye is the supported equivalent)
|
|
FROM ruby@sha256:077cdae43603fc568f4c65a2558cb608299b84c93e88c0048e6f3bdf3fa138fd AS builder
|
|
|
|
RUN apt update && apt install -y \
|
|
bsdmainutils \
|
|
build-essential \
|
|
make \
|
|
bundler \
|
|
ghostscript \
|
|
imagemagick \
|
|
libxml2-dev \
|
|
libxslt-dev \
|
|
pkg-config \
|
|
python3 \
|
|
xz-utils
|
|
|
|
# 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
|