The most reliable way to build flannel is by using Docker.
To build flannel in a container run
You will now have a
flanneld-amd64 binary in the
If you're not running
amd64 then you need to manually set
ARCH before running
make. For example, to produce a
flanneld-s390x binary and image, run
If you want to cross-compile for a different platform (e.g. you're running
amd64 but you want to produce
arm binaries) then you need the qemu-static binaries to be present in
/usr/bin. They can be installed on Ubuntu with
sudo apt-get install qemu-user-static
Then you should be able to set the ARCH as above
sudo apt-get install linux-libc-dev golang gcc. If the golang version installed is not 1.7 or higher. Download the newest golang and install manully. To build the flannel.exe on windows, mingw-w64 is also needed. Run command
sudo apt-get install mingw-w64
sudo yum install kernel-headers golang gcc glibc-static.
cd $GOPATH/src; git clone https://github.com/coreos/flannel.git
cd flannel; CGO_ENABLED=1 make dist/flanneldfor linux usage. Run the build script, ensuring that
cd flannel; CGO_ENABLED=1 make dist/flanneld.exefor windows usage.
distto the GitHub release.
make docker-push-allto push all the images to a registry.
A new build of flannel is created for every commit to master. They can be obtained from https://quay.io/repository/coreos/flannel-git
latestis always the current HEAD of master. Use with caution
These builds can be useful when a particular commit is needed for a specific feature or bugfix.
NOTE: the image name is
quay.io/coreos/flannel-git for master builds. Releases are named
quay.io/coreos/flannel (there is no