Files
linuxkit/alpine/packages/docker/Makefile
2016-10-12 00:48:18 +01:00

62 lines
1.3 KiB
Makefile

DOCKER_VERSION?=1.12.2
FORCE_CURL?=1
ARCH?=x86_64
OS?=Linux
DOCKER_EXPERIMENTAL?=1
all: usr/bin/docker
RELEASE_CANDIDATE=$(findstring -rc,$(DOCKER_VERSION))
ifeq ($(RELEASE_CANDIDATE),-rc)
TEST_HOST=test.docker.com
else
TEST_HOST=get.docker.com
endif
ifeq ($(DOCKER_EXPERIMENTAL),1)
DOCKER_HOST=experimental.docker.com
DOCKER_IMAGE?=docker:$(DOCKER_VERSION)-experimental
else
DOCKER_HOST=$(TEST_HOST)
DOCKER_IMAGE?=docker:$(DOCKER_VERSION)
endif
.PHONY: download hub cleanusr
ifeq ($(DOCKER_BIN_URL)$(FORCE_CURL)$(RELEASE_CANDIDATE),)
usr/bin/docker: hub
else
usr/bin/docker: download
endif
cleanusr:
mkdir -p usr/bin
rm -f usr/bin/* ok
download: cleanusr
ifdef DOCKER_BIN_URL
(curl -sSL ${DOCKER_BIN_URL} && touch ok) | tar xzf -
else
(curl -sSL https://${DOCKER_HOST}/builds/${OS}/${ARCH}/docker-${DOCKER_VERSION}.tgz && touch ok) | tar xzf -
endif
rm ok
mv docker/docker-containerd-ctr \
docker/docker \
docker/docker-containerd \
docker/dockerd \
docker/docker-proxy \
docker/docker-runc \
docker/docker-containerd-shim \
usr/bin/
([ -e docker/docker-init ] && mv docker/docker-init usr/bin/) || true
hub: cleanusr
(docker run --rm $(DOCKER_IMAGE) tar cf - -C /usr/local/bin . && touch ok) | tar xf - -C usr/bin
rm ok
rm -f usr/bin/docker-entrypoint.sh
clean:
rm -rf usr/ docker/ ok
.DELETE_ON_ERROR: