Can't compile Dockerfile on MacOS (arm64)
- GET version: 3.8.2
- Cloud Provider: GCP
- Environment configuration: 10k_hybrid_gcp
When trying to build the image I get the following failure:
nerdctl build . -t gitlab-environment-toolkit:latest
[+] Building 2.0s (18/27)
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 3.60kB 0.0s
=> WARN: FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 1) 0.0s
=> [internal] load metadata for docker.io/library/python:3.11-slim-bullseye 0.5s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 77B 0.0s
=> [python-build 1/9] FROM docker.io/library/python:3.11-slim-bullseye@sha256:9e25f400253a5fa3191813d6a67eb801ca1e6f012b3bd2588fa6920b59e3eba6 0.0s
=> => resolve docker.io/library/python:3.11-slim-bullseye@sha256:9e25f400253a5fa3191813d6a67eb801ca1e6f012b3bd2588fa6920b59e3eba6 0.0s
=> [internal] load build context 0.1s
=> => transferring context: 36.54kB 0.1s
=> CACHED [python-build 2/9] COPY ansible /gitlab-environment-toolkit/ansible 0.0s
=> CACHED [python-build 3/9] COPY terraform /gitlab-environment-toolkit/terraform 0.0s
=> CACHED [python-build 4/9] COPY .tool-versions /gitlab-environment-toolkit/.tool-versions 0.0s
=> CACHED [python-build 5/9] COPY ./bin/docker/setup-get-symlinks.sh /gitlab-environment-toolkit/bin/setup-get-symlinks.sh 0.0s
=> CACHED [python-build 6/9] WORKDIR /gitlab-environment-toolkit 0.0s
=> CACHED [python-build 7/9] RUN apt-get update -y && apt-get install -y --no-install-recommends build-essential libssl-dev uuid-dev cmake libcurl4-openssl-dev pkg-config git curl unzip && rm -rf /var/lib/ap 0.0s
=> CACHED [python-build 8/9] RUN pip3 install --no-cache-dir --user -r $(if [[ "false" == "true" ]]; then echo "ansible/requirements/ansible-python-packages.txt"; else echo "ansible/requirements/requirements 0.0s
=> CACHED [python-build 9/9] RUN ansible-galaxy install -r ansible/requirements/ansible-galaxy-requirements.yml 0.0s
=> CACHED [stage-1 2/15] COPY --from=python-build /root/ /root/ 0.0s
=> CACHED [stage-1 3/15] COPY --from=python-build /gitlab-environment-toolkit /gitlab-environment-toolkit 0.0s
=> CACHED [stage-1 4/15] WORKDIR /gitlab-environment-toolkit 0.0s
=> CACHED [stage-1 5/15] RUN source ~/.bashrc && apt-get update -y && apt-get install --no-install-recommends -y curl unzip nano git-crypt gnupg openssh-client lsb-release && rm -rf /var/lib/apt/lists/* 0.0s
=> ERROR [stage-1 6/15] RUN curl https://mise.jdx.dev/gpg-key.pub | gpg --dearmor -o /usr/share/keyrings/mise-archive-keyring.gpg && echo "deb [signed-by=/usr/share/keyrings/mise-archive-keyring.gpg arc 1.2s
------
> [stage-1 6/15] RUN curl https://mise.jdx.dev/gpg-key.pub | gpg --dearmor -o /usr/share/keyrings/mise-archive-keyring.gpg && echo "deb [signed-by=/usr/share/keyrings/mise-archive-keyring.gpg arch=amd64] https://mise.jdx.dev/deb stable main" | tee /etc/apt/sources.list.d/mise.list && apt-get update && apt-get install -y --no-install-recommends mise && rm -rf /var/lib/apt/lists/*:
0.054 % Total % Received % Xferd Average Speed Time Time Time Current
0.055 Dload Upload Total Spent Left Speed
100 3151 100 3151 0 0 67042 0 --:--:-- --:--:-- --:--:-- 67042
0.103 deb [signed-by=/usr/share/keyrings/mise-archive-keyring.gpg arch=amd64] https://mise.jdx.dev/deb stable main
0.155 Get:1 http://deb.debian.org/debian bullseye InRelease [75.1 kB]
0.168 Get:2 http://deb.debian.org/debian-security bullseye-security InRelease [27.2 kB]
0.180 Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.0 kB]
0.180 Get:4 https://mise.jdx.dev/deb stable InRelease [2065 B]
0.225 Get:5 http://deb.debian.org/debian bullseye/main arm64 Packages [7955 kB]
0.357 Get:6 https://mise.jdx.dev/deb stable/main amd64 Packages [361 B]
0.369 Get:7 http://deb.debian.org/debian-security bullseye-security/main arm64 Packages [417 kB]
0.390 Get:8 http://deb.debian.org/debian bullseye-updates/main arm64 Packages [16.3 kB]
0.798 Fetched 8537 kB in 1s (12.5 MB/s)
0.798 Reading package lists...
0.969 Reading package lists...
1.140 Building dependency tree...
1.183 Reading state information...
1.216 E: Unable to locate package mise
------
Dockerfile:43
--------------------
42 | # Install Mise
43 | >>> RUN curl https://mise.jdx.dev/gpg-key.pub | gpg --dearmor -o /usr/share/keyrings/mise-archive-keyring.gpg && \
44 | >>> echo "deb [signed-by=/usr/share/keyrings/mise-archive-keyring.gpg arch=amd64] https://mise.jdx.dev/deb stable main" | tee /etc/apt/sources.list.d/mise.list && \
45 | >>> apt-get update && apt-get install -y --no-install-recommends mise && rm -rf /var/lib/apt/lists/*
46 |
--------------------
error: failed to solve: process "/bin/bash -c curl https://mise.jdx.dev/gpg-key.pub | gpg --dearmor -o /usr/share/keyrings/mise-archive-keyring.gpg && echo \"deb [signed-by=/usr/share/keyrings/mise-archive-keyring.gpg arch=amd64] https://mise.jdx.dev/deb stable main\" | tee /etc/apt/sources.list.d/mise.list && apt-get update && apt-get install -y --no-install-recommends mise && rm -rf /var/lib/apt/lists/*" did not complete successfully: exit code: 100
FATA[0001] no image was built
Error: exit status 1
it seems the problem is we are hard-coding arch=amd64 while it is running on arm64 linux.