8. > docker container run...
os linux
architecture arm
os linux
architecture amd64
os windows
architecture amd64
os linux
architecture arm64
9. > docker container run...
os linux
architecture arm
os linux
architecture amd64
os windows
architecture amd64
os linux
architecture arm64
my-app
os *
architecture *
10. my-app
os *
architecture *
> docker container run...
os linux
architecture arm
os linux
architecture amd64
os windows
architecture amd64
os linux
architecture arm64
Build-time diversity
Run-time diversity
Cloud Arm instances
Edge & IoT
18. > docker manifest create...
my-app:linux-arm
os linux
architecture arm
my-app:linux-amd64
os linux
architecture amd64
my-app:windows-amd64
os windows
architecture amd64
my-app:linux-arm64
os linux
architecture arm64
19. > docker manifest push...
my-app:linux-arm
os linux
architecture arm
my-app:linux-amd64
os linux
architecture amd64
my-app:windows-amd64
os windows
architecture amd64
my-app:linux-arm64
os linux
architecture arm64
my-app
os *
architecture *
20. > docker image pull myapp
my-app:linux-arm
os linux
architecture arm
my-app:linux-amd64
os linux
architecture amd64
my-app:windows-amd64
os windows
architecture amd64
my-app:linux-arm64
os linux
architecture arm64
my-app
os *
architecture *
28. TAKEAWAYS
âą Everything should be multi-platform
âą Always use multi-stage Dockerfiles
âą `buildx` is experimental but solid (based on BuildKit)
⹠Alternatively use `docker manifest`⊠also experimental :)