jenkins-docker/Dockerfile

58 lines
1.4 KiB
Docker

FROM jenkins/jenkins:lts
MAINTAINER Benedikt Kristinsson <benedikt@lokun.is>
ENV DEBIAN_FRONTEND noninteractive
ENV TZ Europe/Berlin
ENV TERM=xterm-256color
USER 0
COPY docker.gpg /root/docker.gpg
RUN apt-key add /root/docker.gpg
ARG SUDOIS_JENKINS_UID=1207
ARG SUDOIS_JENKINS_GID=1207
ARG DOCKER_SOCK_GID=134
# used to install just the cli tools with the 'docker-ce-cli' package
# > Package docker-ce-cli is not available, but is referred to by another package.
# now installs 'docker.io' instead
RUN set -x && \
usermod -u ${SUDOIS_JENKINS_UID} jenkins && \
groupmod -g ${SUDOIS_JENKINS_GID} jenkins && \
groupadd docker -g ${DOCKER_SOCK_GID} && \
usermod -a -G docker jenkins && \
apt update && \
apt install -y ca-certificates software-properties-common apt-utils && \
apt-add-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" && \
apt update && \
apt install -y docker.io \
sudo \
tree \
jq \
python3 \
python3-pip \
python3-dev \
python3-venv \
pipx \
build-essential \
dpkg-dev \
debdelta \
ruby \
ruby-dev \
rubygems && \
gem install --no-document fpm
# Install old rust from Debian repo
RUN set -x && \
apt update && \
apt install -y rust-all
USER jenkins
RUN set -x && \
pipx install poetry && \
pipx install hatch && \
pipx install esphome