forked from CircleCI-Public/cimg-elixir
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile.template
35 lines (29 loc) · 1.49 KB
/
Dockerfile.template
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# vim:set ft=dockerfile:
# Do not edit individual Dockerfiles manually. Instead, please make changes to the Dockerfile.template, which will be used by the build script to generate Dockerfiles.
# By policy, the base image tag should be a quarterly tag unless there's a
# specific reason to use a different one. This means January, April, July, or
# October.
FROM cimg/%%PARENT%%:2024.06-20.04
LABEL maintainer="CircleCI Execution Team <eng-execution@circleci.com>"
# Install Erlang via Erlang Solutions' .deb
ENV ERLANG_VERSION="%%PARENT_TAG%%"
RUN sudo apt-get update && sudo apt-get install -y --no-install-recommends \
libncurses5 \
libodbc1 \
libsctp1 \
libwxgtk3.0 && \
# Erlang 24 is the last version to support only focal. Moving forward, the base image can move to 22.04
erlangDEB="https://binaries2.erlang-solutions.com/ubuntu/pool/contrib/e/esl-erlang/esl-erlang_${ERLANG_VERSION}-1~ubuntu~focal_amd64.deb" && \
curl -sSL -o erlang.deb $erlangDEB && \
sudo dpkg -i erlang.deb && \
sudo rm -rf erlang.deb /var/lib/apt/lists/*
# Install Elixir via Erlang Solutions' .deb
ENV ELIXIR_VERSION=%%VERSION_FULL%%
RUN ELIXIR_DOWNLOAD_URL="https://github.com/elixir-lang/elixir/archive/v${ELIXIR_VERSION}.tar.gz" && \
curl -fSL -o elixir-src.tar.gz $ELIXIR_DOWNLOAD_URL && \
sudo mkdir -p /usr/local/src/elixir && \
sudo tar -xzC /usr/local/src/elixir --strip-components=1 -f elixir-src.tar.gz && \
rm elixir-src.tar.gz && \
cd /usr/local/src/elixir && \
sudo make install clean && \
elixir --version