# docker build -t docker:simple -f Dockerfile.simple . # docker run --rm docker:simple hack/make.sh dynbinary # docker run --rm --privileged docker:simple hack/dind hack/make.sh test-unit # docker run --rm --privileged -v /var/lib/docker docker:simple hack/dind hack/make.sh dynbinary test-integration-cli # This represents the bare minimum required to build and test Docker. FROM debian:jessie # compile and runtime deps # https://github.com/docker/docker/blob/master/project/PACKAGERS.md#build-dependencies # https://github.com/docker/docker/blob/master/project/PACKAGERS.md#runtime-dependencies RUN apt-get update && apt-get install -y --no-install-recommends \ btrfs-tools \ curl \ gcc \ git \ golang \ libdevmapper-dev \ libsqlite3-dev \ \ ca-certificates \ e2fsprogs \ iptables \ procps \ xfsprogs \ xz-utils \ \ aufs-tools \ && rm -rf /var/lib/apt/lists/* # Install runc ENV RUNC_COMMIT baf6536d6259209c3edfa2b22237af82942d3dfa RUN set -x \ && export GOPATH="$(mktemp -d)" \ && git clone git://github.com/opencontainers/runc.git "$GOPATH/src/github.com/opencontainers/runc" \ && cd "$GOPATH/src/github.com/opencontainers/runc" \ && git checkout -q "$RUNC_COMMIT" \ && make static BUILDTAGS="seccomp apparmor selinux" \ && cp runc /usr/local/bin/docker-runc # Install containerd ENV CONTAINERD_COMMIT 9dc2b3273db42c75368988a3885a3afd770069d9 RUN set -x \ && export GOPATH="$(mktemp -d)" \ && git clone git://github.com/docker/containerd.git "$GOPATH/src/github.com/docker/containerd" \ && cd "$GOPATH/src/github.com/docker/containerd" \ && git checkout -q "$CONTAINERD_COMMIT" \ && make static \ && cp bin/containerd /usr/local/bin/docker-containerd \ && cp bin/containerd-shim /usr/local/bin/docker-containerd-shim \ && cp bin/ctr /usr/local/bin/docker-containerd-ctr ENV AUTO_GOPATH 1 WORKDIR /usr/src/docker COPY . /usr/src/docker