1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/hack/make
Dieter Reuter 0d7e118f01 Add support for running builds within an QEMU emulation
With this change we can run a Docker build in QEMU and build ARM or ARM64 binaries directly on an Intel build machine. This feature already supports building with Docker4Mac (Beta31). So it's easy for a developer to compile and test the Docker binaries locally on his dev machine w/o the need of the target hardware. Another use case would be to run builds on a clound CI like Travis to get an instant feedback loop for PR's, all on a common Intel platform w/o the need to set up the CI system on the target hardware.

Usage: build static Docker binaries for ARM 32-bit
```
DOCKER_ENGINE_OSARCH="linux/arm" make binary
```

Usage: build static Docker binaries for ARM64 aka AARCH64
```
DOCKER_ENGINE_OSARCH="linux/arm64" make binary
```

Signed-off-by: Dieter Reuter <dieter.reuter@me.com>
2016-12-03 13:53:59 +01:00
..
.build-deb Build docker-proxy from git checkout like other external binaries 2016-10-25 13:13:22 +01:00
.build-rpm Add Fedora 25 RPMs 2016-11-10 20:44:30 +01:00
.resources-windows Windows: Support running dockerd as a service 2016-04-26 14:04:47 -07:00
.binary project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
.binary-setup Add init process for zombie fighting 2016-09-19 17:33:50 -07:00
.detect-daemon-osarch Add support for running builds within an QEMU emulation 2016-12-03 13:53:59 +01:00
.ensure-emptyfs
.go-autogen Remove extra binaries commit variables from windows build 2016-11-11 08:24:17 -08:00
.go-autogen.ps1 Windows: make.ps1 and Dockerfile for native builds 2016-12-02 10:46:15 -08:00
.integration-daemon-setup Move some test fixtures to go 2016-09-07 17:30:35 -04:00
.integration-daemon-start Make experimental a runtime flag 2016-10-24 15:20:01 -07:00
.integration-daemon-stop
.integration-test-helpers 'eg.' should be 'e.g.' 2016-09-21 13:48:06 +08:00
binary Add make install task 2016-06-03 12:08:33 +02:00
binary-client project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
binary-daemon project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
build-deb Merge pull request #27829 from DieterReuter/fix-aptrepo-distro-versions 2016-11-10 16:23:27 +01:00
build-integration-test-binary Verify integration tests before building bundles 2016-09-06 20:27:28 -04:00
build-rpm Replace grimes with tini 2016-11-08 14:42:54 -08:00
clean-apt-repo add scripts to clean experimental rpms and debs 2016-01-27 15:54:53 -08:00
clean-yum-repo add scripts to clean experimental rpms and debs 2016-01-27 15:54:53 -08:00
cover All supported Go versions have -cover now 2016-08-25 18:24:35 +01:00
cross Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
dynbinary Fix spelling in comments, strings and documentation 2016-07-03 20:58:11 +03:00
dynbinary-client project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
dynbinary-daemon project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
generate-index-listing deb: skip hidden files when generating indexes 2016-08-03 12:58:14 +02:00
install-binary Add make install task 2016-06-03 12:08:33 +02:00
install-binary-client Add make install task 2016-06-03 12:08:33 +02:00
install-binary-daemon Add init process for zombie fighting 2016-09-19 17:33:50 -07:00
install-script
README.md
release-deb Merge pull request #27829 from DieterReuter/fix-aptrepo-distro-versions 2016-11-10 16:23:27 +01:00
release-rpm Use sha512 when gpg signing builds 2016-11-04 09:45:13 -07:00
run Add target for make run 2016-07-08 16:25:21 -04:00
sign-repos Use sha512 when gpg signing builds 2016-11-04 09:45:13 -07:00
test-deb-install Update build-deb to make correct use of DOCKER_BUILD_PKGS 2016-05-02 11:22:01 -07:00
test-docker-py Output docker-py test results in xunit format 2016-08-31 09:35:49 -07:00
test-install-script
test-integration-cli Support interactive integration testing. 2016-08-05 12:07:28 -04:00
test-integration-shell Support interactive integration testing. 2016-08-05 12:07:28 -04:00
test-old-apt-repo
test-unit Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
tgz Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
ubuntu Make manpages in a conatiner. 2016-07-22 16:32:51 -04:00
update-apt-repo fix common misspell 2016-02-11 15:49:36 -08:00
win Windows libnetwork integration 2016-03-09 20:33:21 -08:00

This directory holds scripts called by make.sh in the parent directory.

Each script is named after the bundle it creates. They should not be called directly - instead, pass it as argument to make.sh, for example:

./hack/make.sh test
./hack/make.sh binary ubuntu

# Or to run all bundles:
./hack/make.sh

To add a bundle:

  • Create a shell-compatible file here
  • Add it to $DEFAULT_BUNDLES in make.sh