Multi-arch image build.

--

Herhangi bir uygulamanın docker imajını istenilen mimaride çalışacak şekilde build edebilmek için aşağıda anlatılan işlem adımları uygulanmalıdır:

1- Docker clientta experimental özelliği aktif edilir.

# echo '{ "experimental": "enabled" }' > ~/.docker/config.json

2- Docker client için yeni bir builder oluşturulur.

# docker buildx create --name nubuilder
# docker run --rm --privileged docker/binfmt:66f9012c56a8316f9244ffd7622d7c21c1f6f28d

Aşağıdaki komut çıktısı ile builder’ın hangi mimariler için imaj build edilebiceği kontrol edilebilir.

# docker buildx inspect --bootstrap
Name: nubuilder
Driver: docker-container
Nodes:
Name: nubuilder0
Endpoint: unix:///var/run/docker.sock
Status: running
Platforms: linux/amd64, linux/386, linux/arm64, linux/ppc64le, linux/s390x, linux/arm/v7, linux/arm/v6

3- Son olarak buildx komutu ile ilgili konteyner build edilerek yerel docker deposuna “ — load” parametresi ile yüklenir.

# docker buildx build --load --platform linux/ppc64le --tag myrepository/wordpress:ppc64le .

--

--