oduwsdl / ipwb

InterPlanetary Wayback: A distributed and persistent archive replay system using IPFS
MIT License
617 stars 39 forks source link

Docker file does not build on arm64 #835

Closed machawk1 closed 4 months ago

machawk1 commented 4 months ago

macOS 14.1.2 on an Apple M3 based on current HEAD (cd1ffff).

% docker image build -t oduwsdl/ipwb .
[+] Building 2.4s (9/15)                                                                              docker:desktop-linux
 => [internal] load build definition from Dockerfile                                                                  0.0s
 => => transferring dockerfile: 2.41kB                                                                                0.0s
 => [internal] load metadata for docker.io/library/python:3                                                           0.4s
 => [internal] load .dockerignore                                                                                     0.0s
 => => transferring context: 144B                                                                                     0.0s
 => [base 1/9] FROM docker.io/library/python:3@sha256:f6d04873f0a67146854270e5f6513ed5e0165557c1b10689f1a20e9e65c8fe  0.0s
 => [internal] load build context                                                                                     0.0s
 => => transferring context: 4.69kB                                                                                   0.0s
 => CACHED [base 2/9] COPY       entrypoint.sh /usr/local/bin/                                                        0.0s
 => CACHED [base 3/9] RUN        chmod a+x /usr/local/bin/entrypoint.sh                                               0.0s
 => CACHED [base 4/9] RUN        mkdir -p /data/{warc,cdxj,ipfs}                                                      0.0s
 => ERROR [base 5/9] RUN        cd /tmp            && wget -q https://dist.ipfs.io/kubo/v0.29.0/kubo_v0.29.0_linux-a  1.9s
------                                                                                                                     
 > [base 5/9] RUN        cd /tmp            && wget -q https://dist.ipfs.io/kubo/v0.29.0/kubo_v0.29.0_linux-amd64.tar.gz            && tar xvfz kubo*.tar.gz            && mv kubo/ipfs /usr/local/bin/ipfs            && rm -rf kubo*            && ipfs init:                                                                                                                  
1.427 kubo/LICENSE                                                                                                         
1.427 kubo/LICENSE-APACHE                                                                                                  
1.427 kubo/LICENSE-MIT
1.427 kubo/README.md
1.427 kubo/build-log
1.427 kubo/install.sh
1.427 kubo/ipfs
1.857 rosetta error: failed to open elf at /lib64/ld-linux-x86-64.so.2
1.857  Trace/breakpoint trap
------
Dockerfile:25
--------------------
  24 |     ARG        IPFS_VERSION=v0.29.0
  25 | >>> RUN        cd /tmp \
  26 | >>>            && wget -q https://dist.ipfs.io/kubo/${IPFS_VERSION}/kubo_${IPFS_VERSION}_linux-amd64.tar.gz \
  27 | >>>            && tar xvfz kubo*.tar.gz \
  28 | >>>            && mv kubo/ipfs /usr/local/bin/ipfs \
  29 | >>>            && rm -rf kubo* \
  30 | >>>            && ipfs init
  31 |     
--------------------
ERROR: failed to solve: process "/bin/sh -c cd /tmp            && wget -q https://dist.ipfs.io/kubo/${IPFS_VERSION}/kubo_${IPFS_VERSION}_linux-amd64.tar.gz            && tar xvfz kubo*.tar.gz            && mv kubo/ipfs /usr/local/bin/ipfs            && rm -rf kubo*            && ipfs init" did not complete successfully: exit code: 133
machawk1 commented 4 months ago

The BUILDARCH environment variable should be available in the Dockerfile and can be used as the basis the variant of kubo to fetch.