Skip to content
This repository has been archived by the owner on Jul 24, 2024. It is now read-only.

Commit

Permalink
Fix windows cross compilation + README.md files
Browse files Browse the repository at this point in the history
  • Loading branch information
Patrick Devine committed Jun 9, 2019
1 parent cb26195 commit 78dcded
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 6 deletions.
33 changes: 33 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@

Building Docker Doodles
-----------------------

Building can be done with the original `docker build`, or with the new *BuildKit* application. The new
experimental 'buildx' command, which is in nightly builds as well as in the Docker Engine 19.03 release,
provides a new, albeit familiar front end to BuildKit similar to the original `docker build` command.
BuildKit has some great new added features such as increased performance, and the ability to easily build
cross platform.

To build for your own platform with the original docker build command, use:

`cd <doodle> && docker build -t <username>/doodle:<doodle> ./`

To build cross platform, use the `Dockerfile.cross` file, either with *BuildKit* directly, or with *buildx*.
With buildx, you'll first need to create a cross platform `builder` instance with:

`docker buildx create --use`

You only need to create one builder instance, and should not need to create new ones with subsequent
builds. To create and push the multi-arch image to Docker Hub, use the command:

`cd <doodle> && docker buildx build -f Dockerfile.cross --platform linux/amd64,linux/arm64,linux/arm/v8,linux/s390x,linux/ppc64le,windows/amd64 -t <usename>/doodle:<doodle> --push .`

This will build the Doodle for these architectures:
* linux/amd64 (64 bit Linux native)
* linux/arm64 (suitable for Amazon EC2 A1 instances)
* linux/arm/v8 (suitable for Raspberry Pi)
* linux/s390x (for mainframe lovers)
* linux/ppc64le (for IBM POWER8 Little Endian)
* windows/amd64 (64 bit Windows native)


2 changes: 1 addition & 1 deletion birthday2019/Dockerfile.cross
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ FROM scratch AS release-linux
COPY --from=builder /project/surprise /surprise
ENTRYPOINT ["/surprise"]

FROM microsoft/nanoserver AS release-windows
FROM mcr.microsoft.com/windows/nanoserver:1809 AS release-windows
COPY --from=builder /project/surprise /surprise.exe
ENTRYPOINT ["\\surprise.exe"]

Expand Down
3 changes: 1 addition & 2 deletions birthday2019/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ Happy Birthday, Docker!
March 2019 marks Docker's sixth year, and we thought we'd celebrate it docker-style with a birthday surprise!
To try it out, run:

`docker run -it --rm docker/surprise`
`docker run -it --rm docker/doodle:birthday`

Complete source can be found [here](https://github.com/docker/doodle).

2 changes: 1 addition & 1 deletion cheers2019/Dockerfile.cross
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ FROM scratch AS release-linux
COPY --from=builder /project/cheers /cheers
ENTRYPOINT ["/cheers"]

FROM microsoft/nanoserver AS release-windows
FROM mcr.microsoft.com/windows/nanoserver:1809 AS release-windows
COPY --from=builder /project/cheers /cheers.exe
ENTRYPOINT ["\\cheers.exe"]

Expand Down
3 changes: 1 addition & 2 deletions cheers2019/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ It's time for Dockercon SF 2019, and Moby wanted to celebrate it in docker style

To try it out, run:

`docker run -it --rm docker/cheers`
`docker run -it --rm docker/doodle:cheers`

Complete source can be found [here](https://github.com/docker/doodle).

0 comments on commit 78dcded

Please sign in to comment.