Skip to content

Commit

Permalink
Add dockerfile for building on non-amd64 platforms
Browse files Browse the repository at this point in the history
Signed-off-by: Daniel Nephin <[email protected]>
  • Loading branch information
dnephin committed Jan 18, 2018
1 parent 4f55001 commit 02ca1c8
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 2 deletions.
11 changes: 9 additions & 2 deletions docker.Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#

DEV_DOCKER_IMAGE_NAME = docker-cli-dev$(IMAGE_TAG)
BINARY_NATIVE_IMAGE_NAME = docker-cli-native$(IMAGE_TAG)
LINTER_IMAGE_NAME = docker-cli-lint$(IMAGE_TAG)
CROSS_IMAGE_NAME = docker-cli-cross$(IMAGE_TAG)
VALIDATE_IMAGE_NAME = docker-cli-shell-validate$(IMAGE_TAG)
Expand All @@ -30,12 +31,18 @@ build_cross_image:
build_shell_validate_image:
docker build -t $(VALIDATE_IMAGE_NAME) -f ./dockerfiles/Dockerfile.shellcheck .

.PHONY: build_binary_native_image
build_binary_native_image:
docker build -t $(BINARY_NATIVE_IMAGE_NAME) -f ./dockerfiles/Dockerfile.binary-native .


# build executable using a container
binary: build_docker_image
docker run --rm $(ENVVARS) $(MOUNTS) $(DEV_DOCKER_IMAGE_NAME) make binary
binary: build_binary_native_image
docker run --rm $(ENVVARS) $(MOUNTS) $(BINARY_NATIVE_IMAGE_NAME)

build: binary


# clean build artifacts using a container
.PHONY: clean
clean: build_docker_image
Expand Down
8 changes: 8 additions & 0 deletions dockerfiles/Dockerfile.binary-native
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
FROM golang:1.9.2-alpine3.6

RUN apk add -U git bash coreutils gcc musl-dev

ENV CGO_ENABLED=0 \
DISABLE_WARN_OUTSIDE_CONTAINER=1
WORKDIR /go/src/github.com/docker/cli
CMD ./scripts/build/binary

0 comments on commit 02ca1c8

Please sign in to comment.