FROM node:14 ARG JENKINS_UID=386 ARG JENKINS_GID=386 ARG DOCKER_GID=999 RUN apt-get update -qq && apt-get install -y curl # Install s5cmd for S3 uploads (much faster than AWS CLI) RUN ARCH=$(uname -m); if [ "$ARCH" = "x86_64" ]; then S5CMD_ARCH="64bit"; else S5CMD_ARCH="arm64"; fi && \ curl -sL "https://github.com/peak/s5cmd/releases/download/v2.3.0/s5cmd_2.3.0_Linux-${S5CMD_ARCH}.tar.gz" | tar xz -C /usr/local/bin s5cmd # install docker cli RUN wget -q -O /tmp/docker-cli.deb https://download.docker.com/linux/debian/dists/stretch/pool/stable/$(dpkg --print-architecture)/docker-ce-cli_18.09.2~3-0~debian-stretch_$(dpkg --print-architecture).deb \ && dpkg -i /tmp/docker-cli.deb RUN npm install -g serverless # Create the jenkins user with the same id:gid as the jenkins node RUN groupadd -g $JENKINS_GID jenkins \ && useradd -m -d /var/lib/jenkins -u $JENKINS_UID -g jenkins jenkins # create docker group, add jenkins user to it RUN groupadd -g $DOCKER_GID docker \ && usermod -aG docker jenkins USER jenkins