Skip to content

Commit 4323c57

Browse files
authored
Build docker image for Ruby 4.0.0 (#36)
1 parent 439ff33 commit 4323c57

File tree

4 files changed

+86
-0
lines changed

4 files changed

+86
-0
lines changed

.github/workflows/build-rails-base.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ jobs:
2222
- ruby: '3.4.8'
2323
folder: '3.x' # slim bookworm for linux/amd64
2424
tag: '3.4.8-slim-bookworm@sha256:9eb304d8ca9d3eeb32a5a5a39b080b295489735510fa832ababb7ffcc079bb57'
25+
- ruby: '4.0.0'
26+
folder: '4.x' # slim bookworm for linux/amd64
27+
tag: '4.0.0-slim-bookworm@sha256:51dc3fabd6b34f3a12b54bdbe4f85e5b1800300c4c29483aecefc7eaa5430ed0'
2528
container:
2629
image: docker:git
2730
env:

.github/workflows/build-rails-buildpack.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ jobs:
2222
- ruby: '3.4.8'
2323
folder: '3.x' # bookworm for linux/amd64
2424
tag: '3.4.8-bookworm@sha256:687432dc8f4094557514f9bd3cd314457d5d86008e70793b7a5d4d9beefa417f'
25+
- ruby: '4.0.0'
26+
folder: '4.x' # bookworm for linux/amd64
27+
tag: '4.0.0-bookworm@sha256:106aa117e7762e813e627f67f7a30c1fff0cc39f292a1907c3c5131f9133f483'
2528
container:
2629
image: docker:git
2730
env:

rails-base/4.x/Dockerfile

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
ARG RUBY_TAG=latest
2+
FROM public.ecr.aws/docker/library/ruby:${RUBY_TAG}
3+
4+
ENV APP_HOME=/app
5+
ENV PATH=$APP_HOME/bin:$PATH
6+
7+
RUN useradd --user-group --create-home app
8+
RUN mkdir -p $APP_HOME && chown -R app:app $APP_HOME
9+
WORKDIR $APP_HOME
10+
11+
RUN apt-get update \
12+
&& apt-get install -y --no-install-recommends \
13+
curl \
14+
file \
15+
git \
16+
fonts-ipafont-gothic \
17+
fonts-unfonts-core \
18+
imagemagick \
19+
librsvg2-bin \
20+
wkhtmltopdf \
21+
xvfb \
22+
xauth \
23+
default-libmysqlclient-dev \
24+
libxslt1.1 \
25+
libxml2 \
26+
&& curl -sL https://deb.nodesource.com/setup_lts.x | bash - \
27+
&& apt-get update \
28+
&& apt-get install -y --no-install-recommends nodejs \
29+
&& rm -rf /var/lib/apt/lists/*
30+
31+
# Setup wkhtmltopdf
32+
RUN echo '#!/bin/bash\nxvfb-run -a --server-args="-screen 0, 1024x768x24" /usr/bin/wkhtmltopdf --enable-local-file-access -q $*' > /usr/bin/wkhtmltopdf.sh && \
33+
chmod a+x /usr/bin/wkhtmltopdf.sh && \
34+
ln -s /usr/bin/wkhtmltopdf.sh /usr/local/bin/wkhtmltopdf

rails-buildpack/4.x/Dockerfile

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
ARG RUBY_TAG=latest
2+
FROM public.ecr.aws/docker/library/ruby:${RUBY_TAG}
3+
4+
RUN apt-get update \
5+
&& apt-get install -y --no-install-recommends \
6+
file \
7+
git \
8+
unzip \
9+
curl \
10+
autoconf \
11+
automake \
12+
default-libmysqlclient-dev \
13+
default-mysql-client \
14+
g++ \
15+
gcc \
16+
gnupg \
17+
patch \
18+
make \
19+
libbz2-dev \
20+
libc6-dev \
21+
liblzma-dev \
22+
libmagickcore-dev \
23+
libmagickwand-dev \
24+
libreadline-dev \
25+
libtool \
26+
libxslt-dev \
27+
libpq-dev \
28+
libsqlite3-dev \
29+
libxml2-dev \
30+
qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools \
31+
libqt5webkit5-dev \
32+
gstreamer1.0-plugins-base \
33+
gstreamer1.0-tools \
34+
gstreamer1.0-x \
35+
imagemagick \
36+
&& apt-get upgrade -y \
37+
&& rm -rf /var/lib/apt/lists/*
38+
39+
# Install Node JS
40+
RUN curl -sL https://deb.nodesource.com/setup_lts.x | bash - \
41+
&& apt-get install -y nodejs \
42+
&& rm -rf /var/lib/apt/lists/*
43+
RUN npm install -g yarn
44+
45+
ENV LANG C.UTF-8
46+
ENV LC_ALL C.UTF-8

0 commit comments

Comments
 (0)