blob: 9a97072aab01fe09a28f4e6845be5e9d10ab8e8b [file] [log] [blame]
Leonardo Sandoval4cb535c2022-01-04 12:07:31 -06001FROM ubuntu:20.04
2
3ENV PKG_DEPS="\
4 apt-transport-https \
5 ca-certificates \
6 curl \
7 git \
8 gnupg \
9 lsb-release \
10 openjdk-8-jre-headless \
11 python3 \
12 python3-venv \
13 sudo \
14 unzip \
15"
16
17ENV DOCKER_PKG_DEPS="\
18 containerd.io \
19 docker-ce \
20 docker-ce-cli \
21"
22
23# Can be overriden at build time
24ARG BUILDSLAVE_PASSWORD=buildslave
25
26RUN set -e ;\
27 apt-get -yq update ;\
28 apt-get -yq install ${PKG_DEPS} ;\
29 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg ;\
30 echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
31 $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null ;\
32 apt-get update ;\
33 apt-get install -yq ${DOCKER_PKGS_DEPS} ;\
34 # Setup buildslave user for Jenkins
35 useradd -m -s /bin/bash buildslave ;\
36 echo "buildslave:$BUILDSLAVE_PASSWORD" | chpasswd ;\
37 echo 'buildslave ALL = NOPASSWD: ALL' > /etc/sudoers.d/jenkins ;\
38 chmod 0440 /etc/sudoers.d/jenkins ;\
39 groupadd docker ;\
40 usermod -aG docker buildslave ;\
41 ln -s $(which python3) /usr/bin/python