FROM ubuntu:focal ARG DEBIAN_FRONTEND=noninteractive RUN apt-get update \ && apt-get dist-upgrade -y \ && apt-get install -y locales sudo \ && rm -rf /var/lib/apt/lists/* RUN locale-gen en_US.UTF-8 \ && update-locale LANG=en_US.UTF-8 LANGUAGE=en_US:en ENV LANG=en_US.UTF-8 \ LANGUAGE=en_US:en \ LC_ALL=en_US.UTF-8 RUN adduser --disabled-password --gecos '' docker \ && adduser docker sudo \ && echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers RUN apt-get update && apt-get install -y \ curl bash bc gcc-10 sed patch patchutils tar bzip2 gzip xz-utils zstd perl gawk gperf zip \ unzip diffutils lzop make file g++-10 xfonts-utils xsltproc default-jre-headless python3 \ libc6-dev libncurses5-dev libjson-perl libxml-parser-perl libparse-yapp-perl rdfind \ golang-1.20-go git openssh-client rsync \ --no-install-recommends \ && ln -s /usr/lib/go-1.20 /usr/lib/go \ && ln -s /usr/lib/go-1.20/bin/go /usr/bin/go \ && ln -s /usr/lib/go-1.20/bin/gofmt /usr/bin/gofmt \ && rm -rf /var/lib/apt/lists/* RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 \ --slave /usr/bin/cpp cpp /usr/bin/cpp-10 \ --slave /usr/bin/g++ g++ /usr/bin/g++-10 \ --slave /usr/bin/gcov gcov /usr/bin/gcov-10 RUN update-alternatives --config gcc USER docker