我想为buildx
台式机(是从多台计算机上加载的)为aarch64
amd64
的多体系结构(visual studio code
和xfce
)先前构建的拱门图片)。我目前使用两个不同的Dockerfile从Web(在amd64主机上)加载两个不同的预编译包。结果是我可以合并在一个清单(following)中的两个不同的图像。如果可以使用具有基于该架构的某些条件的单个Dockerfile,则将更方便且更不易出错。
这是我的用于aarch64架构的Dockerfile(已插入替代项!)
# buildx with
# docker buildx build -t andrewufrank/xfce-plusvc:deb10.1.x1.1.e1.vc1aarch --platform linux/arm64 --push .
FROM andrewufrank/xfce-pluseditors:deb10.1.x1.1.e1
RUN apt-get update && \
env DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
apt-transport-https \
wget curl ca-certificates
RUN curl -s https://packagecloud.io/install/repositories/swift-arm/vscode/script.deb.sh | sudo bash
RUN apt-get install code-oss
## alternative for amd64:
RUN wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
RUN install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
RUN sh -c 'echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
RUN apt-get update && \
apt-get install -y --no-install-recommends code
## end alternative!
CMD ["startxfce4"]
有没有一种方法可以通过buildx来实现?
其他改进建议(我是docker和buildx的新手。)