gopkg.in/docker/docker.v20@v20.10.27/Dockerfile.simple (about) 1 # docker build -t docker:simple -f Dockerfile.simple . 2 # docker run --rm docker:simple hack/make.sh dynbinary 3 # docker run --rm --privileged docker:simple hack/dind hack/make.sh test-unit 4 # docker run --rm --privileged -v /var/lib/docker docker:simple hack/dind hack/make.sh dynbinary test-integration 5 6 # This represents the bare minimum required to build and test Docker. 7 8 ARG GO_VERSION=1.20.10 9 10 FROM golang:${GO_VERSION}-buster 11 ENV GO111MODULE=off 12 13 # allow replacing httpredir or deb mirror 14 ARG APT_MIRROR=deb.debian.org 15 RUN sed -ri "s/(httpredir|deb).debian.org/$APT_MIRROR/g" /etc/apt/sources.list 16 17 # Compile and runtime deps 18 # https://github.com/docker/docker/blob/master/project/PACKAGERS.md#build-dependencies 19 # https://github.com/docker/docker/blob/master/project/PACKAGERS.md#runtime-dependencies 20 RUN apt-get update && apt-get install -y --no-install-recommends \ 21 build-essential \ 22 curl \ 23 cmake \ 24 gcc \ 25 git \ 26 libapparmor-dev \ 27 libbtrfs-dev \ 28 libdevmapper-dev \ 29 libseccomp-dev \ 30 ca-certificates \ 31 e2fsprogs \ 32 iptables \ 33 pkg-config \ 34 pigz \ 35 procps \ 36 xfsprogs \ 37 xz-utils \ 38 \ 39 aufs-tools \ 40 vim-common \ 41 && rm -rf /var/lib/apt/lists/* 42 43 # Install runc, containerd, tini and docker-proxy 44 # Please edit hack/dockerfile/install/<name>.installer to update them. 45 COPY hack/dockerfile/install hack/dockerfile/install 46 RUN for i in runc containerd tini proxy dockercli; \ 47 do hack/dockerfile/install/install.sh $i; \ 48 done 49 ENV PATH=/usr/local/cli:$PATH 50 51 ENV AUTO_GOPATH 1 52 WORKDIR /usr/src/docker 53 COPY . /usr/src/docker