[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] automation: set architecture in docker files



On Mon, 13 Nov 2023, Roger Pau Monne wrote:
> Pass the desired architecture of the image in the FROM instruction if the
> image is possibly multi-platform.
> 
> This allows using the x86 Dockerfiles on OS X on arm64 hardware.
> 
> No functional change intended.
> 
> Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>

Although I am not opposed to this change, so far we have been using:
arm64v8/alpine:3.18

for x86 it is not specified but it would be:
amd64/alpine:3.18

Two options:
1) we add amd64/ everywhere and leave the arm containers alone
2) we change all containers, including the arm containers, to use the
--platform option

I don't think is a good idea to have 2 different ways to specify the
architecture for x86 and arm containers



> ---
> I haven't touched the Yocto dockerfile because I'm not sure how it's used.
> ---
>  automation/build/alpine/3.18.dockerfile               | 2 +-
>  automation/build/archlinux/current-riscv64.dockerfile | 2 +-
>  automation/build/archlinux/current.dockerfile         | 2 +-
>  automation/build/centos/7.dockerfile                  | 2 +-
>  automation/build/debian/bookworm.dockerfile           | 2 +-
>  automation/build/debian/bullseye-ppc64le.dockerfile   | 2 +-
>  automation/build/debian/buster-gcc-ibt.dockerfile     | 2 +-
>  automation/build/debian/jessie.dockerfile             | 2 +-
>  automation/build/debian/stretch.dockerfile            | 2 +-
>  automation/build/fedora/29.dockerfile                 | 2 +-
>  automation/build/suse/opensuse-leap.dockerfile        | 2 +-
>  automation/build/suse/opensuse-tumbleweed.dockerfile  | 2 +-
>  automation/build/ubuntu/bionic.dockerfile             | 2 +-
>  automation/build/ubuntu/focal.dockerfile              | 2 +-
>  automation/build/ubuntu/trusty.dockerfile             | 2 +-
>  automation/build/ubuntu/xenial-xilinx.dockerfile      | 2 +-
>  automation/build/ubuntu/xenial.dockerfile             | 2 +-
>  17 files changed, 17 insertions(+), 17 deletions(-)
> 
> diff --git a/automation/build/alpine/3.18.dockerfile 
> b/automation/build/alpine/3.18.dockerfile
> index 5d2a69a06010..4ae9cb5e9e30 100644
> --- a/automation/build/alpine/3.18.dockerfile
> +++ b/automation/build/alpine/3.18.dockerfile
> @@ -1,4 +1,4 @@
> -FROM alpine:3.18
> +FROM --platform=linux/amd64 alpine:3.18
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/archlinux/current-riscv64.dockerfile 
> b/automation/build/archlinux/current-riscv64.dockerfile
> index abf8e7bf0b88..af75b5c720ce 100644
> --- a/automation/build/archlinux/current-riscv64.dockerfile
> +++ b/automation/build/archlinux/current-riscv64.dockerfile
> @@ -1,4 +1,4 @@
> -FROM archlinux
> +FROM --platform=linux/amd64 archlinux
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/archlinux/current.dockerfile 
> b/automation/build/archlinux/current.dockerfile
> index 47e79637a4a6..d974a1434fd5 100644
> --- a/automation/build/archlinux/current.dockerfile
> +++ b/automation/build/archlinux/current.dockerfile
> @@ -1,4 +1,4 @@
> -FROM archlinux:base-devel
> +FROM --platform=linux/amd64 archlinux:base-devel
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/centos/7.dockerfile 
> b/automation/build/centos/7.dockerfile
> index 69dcefb2f011..ab450f0b3a0e 100644
> --- a/automation/build/centos/7.dockerfile
> +++ b/automation/build/centos/7.dockerfile
> @@ -1,4 +1,4 @@
> -FROM centos:7
> +FROM --platform=linux/amd64 centos:7
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/debian/bookworm.dockerfile 
> b/automation/build/debian/bookworm.dockerfile
> index ae008c8d46e5..ac87778b3972 100644
> --- a/automation/build/debian/bookworm.dockerfile
> +++ b/automation/build/debian/bookworm.dockerfile
> @@ -1,4 +1,4 @@
> -FROM debian:bookworm
> +FROM --platform=linux/amd64 debian:bookworm
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile 
> b/automation/build/debian/bullseye-ppc64le.dockerfile
> index 4de8458445ae..6fdfb6bc2b40 100644
> --- a/automation/build/debian/bullseye-ppc64le.dockerfile
> +++ b/automation/build/debian/bullseye-ppc64le.dockerfile
> @@ -1,4 +1,4 @@
> -FROM debian:bullseye-slim
> +FROM --platform=linux/amd64 debian:bullseye-slim
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/debian/buster-gcc-ibt.dockerfile 
> b/automation/build/debian/buster-gcc-ibt.dockerfile
> index 96ab4fe8a2f1..4328c109b72b 100644
> --- a/automation/build/debian/buster-gcc-ibt.dockerfile
> +++ b/automation/build/debian/buster-gcc-ibt.dockerfile
> @@ -1,4 +1,4 @@
> -FROM debian:buster-slim AS builder
> +FROM --platform=linux/amd64 debian:buster-slim AS builder
>  
>  ENV DEBIAN_FRONTEND=noninteractive
>  ENV USER root
> diff --git a/automation/build/debian/jessie.dockerfile 
> b/automation/build/debian/jessie.dockerfile
> index 63b2c1e5b771..db0962953c9a 100644
> --- a/automation/build/debian/jessie.dockerfile
> +++ b/automation/build/debian/jessie.dockerfile
> @@ -1,4 +1,4 @@
> -FROM debian/eol:jessie
> +FROM --platform=linux/amd64 debian/eol:jessie
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/debian/stretch.dockerfile 
> b/automation/build/debian/stretch.dockerfile
> index 1af6c691f8f4..9f6c146f032c 100644
> --- a/automation/build/debian/stretch.dockerfile
> +++ b/automation/build/debian/stretch.dockerfile
> @@ -1,4 +1,4 @@
> -FROM debian:stretch
> +FROM --platform=linux/amd64 debian:stretch
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/fedora/29.dockerfile 
> b/automation/build/fedora/29.dockerfile
> index e55b06a4517e..42a87ce6c84b 100644
> --- a/automation/build/fedora/29.dockerfile
> +++ b/automation/build/fedora/29.dockerfile
> @@ -1,4 +1,4 @@
> -FROM fedora:29
> +FROM --platform=linux/amd64 fedora:29
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/suse/opensuse-leap.dockerfile 
> b/automation/build/suse/opensuse-leap.dockerfile
> index 7010b71acaa0..e1ec38a41445 100644
> --- a/automation/build/suse/opensuse-leap.dockerfile
> +++ b/automation/build/suse/opensuse-leap.dockerfile
> @@ -1,4 +1,4 @@
> -FROM opensuse/leap
> +FROM --platform=linux/amd64 opensuse/leap
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/suse/opensuse-tumbleweed.dockerfile 
> b/automation/build/suse/opensuse-tumbleweed.dockerfile
> index 959e1f6939f0..38f6fda2ff1b 100644
> --- a/automation/build/suse/opensuse-tumbleweed.dockerfile
> +++ b/automation/build/suse/opensuse-tumbleweed.dockerfile
> @@ -1,4 +1,4 @@
> -FROM opensuse/tumbleweed
> +FROM --platform=linux/amd64 opensuse/tumbleweed
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/ubuntu/bionic.dockerfile 
> b/automation/build/ubuntu/bionic.dockerfile
> index e15f54431efb..77d7f933860c 100644
> --- a/automation/build/ubuntu/bionic.dockerfile
> +++ b/automation/build/ubuntu/bionic.dockerfile
> @@ -1,4 +1,4 @@
> -FROM ubuntu:18.04
> +FROM --platform=linux/amd64 ubuntu:18.04
>  LABEL maintainer.name="The Xen Project " \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/ubuntu/focal.dockerfile 
> b/automation/build/ubuntu/focal.dockerfile
> index e3d11194ee2f..30a9b8e84ffe 100644
> --- a/automation/build/ubuntu/focal.dockerfile
> +++ b/automation/build/ubuntu/focal.dockerfile
> @@ -1,4 +1,4 @@
> -FROM ubuntu:20.04
> +FROM --platform=linux/amd64 ubuntu:20.04
>  LABEL maintainer.name="The Xen Project " \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/ubuntu/trusty.dockerfile 
> b/automation/build/ubuntu/trusty.dockerfile
> index 22e294c20cac..0d33578c4e1d 100644
> --- a/automation/build/ubuntu/trusty.dockerfile
> +++ b/automation/build/ubuntu/trusty.dockerfile
> @@ -1,4 +1,4 @@
> -FROM ubuntu:14.04
> +FROM --platform=linux/amd64 ubuntu:14.04
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/ubuntu/xenial-xilinx.dockerfile 
> b/automation/build/ubuntu/xenial-xilinx.dockerfile
> index 5f7087135213..49f27b322995 100644
> --- a/automation/build/ubuntu/xenial-xilinx.dockerfile
> +++ b/automation/build/ubuntu/xenial-xilinx.dockerfile
> @@ -1,4 +1,4 @@
> -FROM ubuntu:16.04
> +FROM --platform=linux/amd64 ubuntu:16.04
>  LABEL maintainer.name="The Xen Project " \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> diff --git a/automation/build/ubuntu/xenial.dockerfile 
> b/automation/build/ubuntu/xenial.dockerfile
> index 2d2ba3e31f63..e8035434f804 100644
> --- a/automation/build/ubuntu/xenial.dockerfile
> +++ b/automation/build/ubuntu/xenial.dockerfile
> @@ -1,4 +1,4 @@
> -FROM ubuntu:16.04
> +FROM --platform=linux/amd64 ubuntu:16.04
>  LABEL maintainer.name="The Xen Project " \
>        maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
>  
> -- 
> 2.42.0
> 

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.