docker
docker copied to clipboard
Build and release Geoserver multi-platform for ARM64 and AMD64.
Currently, the docker images at https://docker.osgeo.org are only compatible with AMD64 platform. Basically, they run on Intel and AMD, not on ARM.
ARM CPUs are winning in popularity, and hosters like Hetzner offer them as root-servers, too.
This pull request will change the release.sh to build and push images for both platforms in parallel. After applying this PR, the release-Script will fail unless the docker-daemon has been set up for multi-platform build, as described here https://docs.docker.com/build/building/multi-platform/#qemu
tl/tr:
- Add to /etc/docker/daemon.json
{"features": {"containerd-snapshotter": true }}and restart docker, e.g.systemctl restart docker - Create a custom builder:
docker buildx create --name container-builder --driver docker-container --use --bootstrap
After that, running build/release.sh should build and push images for both platforms. I cannot test the push, since I have not Nexus Repository to test! Building does not take much longer.
Whoever is releasing new geoserver docker images regularly, will need a multi-platform docker setup.
NB: With our docker-repository provider quay.io, we experienced, that the first push to a repository had to be multi-platform, for the repository to support multi-platform! I think we simply have to try with Nexus here.
Of course I am happy to test on ARM as soon and images are pushed.