当我在我的Macbook M1上构建Dockerfile镜像时,我开始收到关于syslinux的错误,如果我注释掉它,我会继续收到这样的错误:
fetch http://dl-cdn.alpinelinux.org/alpine/v3.13/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.13/main: UNTRUSTED signature
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.13/main: No such file or directory
fetch http://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.13/community: UNTRUSTED signature
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.13/community: No such file or directory所以我知道这个问题与我使用的存储库有关,所以这就是我让ENTRYPOINT在我的Dockerfile文件中这样说的地方:
ENTRYPOINT /src/aports/scripts/mkimage.sh \
--tag v3.13 \
--outdir /build \
--arch x86_64 \
--repository http://dl-cdn.alpinelinux.org/alpine/v3.13/main \
--extra-repository http://dl-cdn.alpinelinux.org/alpine/v3.13/community \
--profile iot我相信这会在我的M1上工作,但它不能!我用的是另一台Macbook,也就是它的内置设备,但为什么不用M1呢?我将非常感谢在这方面的任何帮助。
编辑2:添加完整的Dockerfile:
# This image contains the build environment for edge appliance install ISOs
FROM alpine:3.13
# Define metadata
LABEL maintainer="this_dude@dude.net"
# Configure user
RUN addgroup root this_build
# Initialize update and upgrade on Alpine AMI
RUN apk -U upgrade
# Install dependencies
RUN apk add --no-cache \
alpine-conf \
alpine-sdk \
apk-tools \
dosfstools \
grub-efi \
mtools \
squashfs-tools \
syslinux \
xorriso
WORKDIR /src
# Clone alpine ports repository containing the iso builder
RUN git clone --depth=1 --branch v3.13.2 git://git.alpinelinux.org/aports
RUN chmod +x aports/scripts/mkimage.sh
# Include edge appliance image profile
RUN ln -sf /build/mkimg.run.sh /src/aports/scripts/mkimg.run.sh
WORKDIR /build
# Run ISO build
ENTRYPOINT /src/aports/scripts/mkimage.sh \
--tag v3.13 \
--outdir /build \
--arch x86_64 \
--repository http://dl-cdn.alpinelinux.org/alpine/v3.13/main \
--extra-repository http://dl-cdn.alpinelinux.org/alpine/v3.13/community \
--profile iot发布于 2021-08-10 20:40:41
正如您在这里看到的,https://pkgs.alpinelinux.org/packages?name=syslinux的syslinux引导加载程序包不支持aarch64 (M1处理器)。我建议使用另一个支持AMD和ARM的引导加载程序,例如https://pkgs.alpinelinux.org/packages?name=u-boot&branch=edge。
如果您想在M1处理器上无错误地运行它,请不要忘记将入口点中的--arch x86_64参数更改为--arch aarch64。或者直接从sh脚本中删除它以使用default_arch。
https://stackoverflow.com/questions/68731536
复制相似问题