docker/Dockerfile_amazonlinux_2.erb (58 lines of code) (raw):
FROM amazonlinux:2 as ruby-image
RUN yum update -y -q \
&& yum groupinstall -y "Development Tools" \
&& yum install -y -q \
autoconf \
gcc \
gcc-c++ \
git \
make \
curl \
zlib-devel \
openssl-devel \
glibc-locale-source \
hostname \
libyaml-devel \
&& yum clean all
ENV LANG en_US.UTF-8
ENV LC_ALL en_US.UTF-8
RUN localedef -c -f UTF-8 -i en_US en_US.UTF-8
<%= Snippets.new(include: %w[versions rust ruby]).populate %>
FROM ruby-image as builder
RUN yum update -y -q \
&& yum remove -y -q git \
&& yum install -y yum-utils \
&& amazon-linux-extras install epel -y \
&& yum-config-manager --enable epel \
&& yum install -y \
autoconf \
automake \
clang-devel \
gettext-devel \
curl-devel \
expat-devel \
gettext-devel \
krb5-devel \
perl-devel \
libffi-devel \
libgcrypt-devel \
readline-devel \
gdbm-devel \
ncurses-devel \
bzip2 \
which \
byacc \
libgpg-error-devel \
libassuan-devel \
ccache \
unzip \
gcc10 \
gcc10-c++ \
file \
selinux-policy-devel\
perl-IPC-Cmd
<%= Snippets.new(fips: fips, exclude: %w[rust ruby node yarn]).populate %>
<%= Snippets.new(fips: fips, include: %w[meson-legacy ninja-legacy node_amazonlinux_2 yarn]).populate %>
FROM amazonlinux:2
MAINTAINER GitLab Inc. <support@gitlab.com>
COPY --from=builder / /