Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker Image Compatibility Issue on Apple silicon #115

Open
estensen opened this issue Feb 17, 2025 · 1 comment · Fixed by #117
Open

Docker Image Compatibility Issue on Apple silicon #115

estensen opened this issue Feb 17, 2025 · 1 comment · Fixed by #117

Comments

@estensen
Copy link

Running make run on my MBP M4 Pro (I did run make deps build first) it fails because it uses an image with a different architecture than expected.

➜  based-op git:(main) make run
kurtosis run optimism-package --args-file config.yml --enclave based-op && /Applications/Xcode.app/Contents/Developer/usr/bin/make dump
INFO[2025-02-17T08:28:50+01:00] Executing Starlark package at '/Users/awinninge/Developer/based-op/optimism-package' as the passed argument 'optimism-package' looks like a directory
INFO[2025-02-17T08:28:50+01:00] Compressing package 'github.com/ethpandaops/optimism-package' at 'optimism-package' for upload
INFO[2025-02-17T08:28:50+01:00] Uploading and executing package 'github.com/ethpandaops/optimism-package'
There was an error validating Starlark code
Error while validating final environment of script
        Caused by: Failed fetching the required image 'ghcr.io/blockscout/smart-contract-verifier:v1.9.0'.
        Caused by: An error occurred pulling image 'ghcr.io/blockscout/smart-contract-verifier:v1.9.0'
 --- at /home/circleci/project/container-engine-lib/lib/backend_impls/metrics_reporting/metrics_reporting_kurtosis_backend.go:38 (MetricsReportingKurtosisBackend.FetchImage) ---
Caused by: An error occurred fetching image 'ghcr.io/blockscout/smart-contract-verifier:v1.9.0'
 --- at /home/circleci/project/container-engine-lib/lib/backend_impls/docker/docker_manager/docker_manager.go:1310 (DockerManager.FetchImage) ---
Caused by: Failed to pull Docker image 'ghcr.io/blockscout/smart-contract-verifier:v1.9.0' from remote image repository
 --- at /home/circleci/project/container-engine-lib/lib/backend_impls/docker/docker_manager/docker_manager.go:1251 (DockerManager.FetchImageIfMissing) ---
Caused by: Tried pulling image 'ghcr.io/blockscout/smart-contract-verifier:v1.9.0' but failed
 --- at /home/circleci/project/container-engine-lib/lib/backend_impls/docker/docker_manager/docker_manager.go:1641 (DockerManager.pullImage) ---
Caused by: Tried pulling image 'ghcr.io/blockscout/smart-contract-verifier:v1.9.0' with platform '' but failed
 --- at /home/circleci/project/container-engine-lib/lib/backend_impls/docker/docker_manager/docker_manager.go:2321 (pullImage) ---
Caused by: Error response from daemon: no matching manifest for linux/arm64/v8 in the manifest list entries: no match for platform in manifest: not found

Container images used in this run:
> prom/prometheus:latest - locally cached
> ethereum/client-go:v1.14.13 - locally cached
> python:3.11-alpine - locally cached
> postgres:alpine - locally cached
> us-docker.pkg.dev/oplabs-tools-artifacts/images/op-challenger:develop - locally cached
> us-docker.pkg.dev/oplabs-tools-artifacts/images/op-proposer:develop - locally cached
> based_portal_local - locally cached
> us-docker.pkg.dev/oplabs-tools-artifacts/images/op-deployer:v0.0.11 - locally cached
> us-docker.pkg.dev/oplabs-tools-artifacts/images/op-batcher:v1.10.0 - locally cached
> ethpandaops/lighthouse:stable - locally cached
> protolambda/eth2-val-tools:latest - locally cached
> us-docker.pkg.dev/oplabs-tools-artifacts/images/op-node:v1.10.3 - locally cached
> based_op_geth - locally cached
> mslipper/deployment-utils:latest - locally cached
> grafana/grafana:latest - locally cached
> blockscout/blockscout-optimism:6.8.0 - locally cached
> ghcr.io/paradigmxyz/op-reth:latest - locally cached
> based_op_node - locally cached
> badouralix/curl-jq - locally cached
> ethpandaops/ethereum-genesis-generator:3.4.1 - locally cached
> based_gateway_local - locally cached
> ghcr.io/blockscout/smart-contract-verifier:v1.9.0 - locally cached

WARNING: Container images with different architecture than expected(arm64):
> us-docker.pkg.dev/oplabs-tools-artifacts/images/op-deployer:v0.0.11 - amd64

Error encountered running Starlark code.

⭐ us on GitHub - https://github.com/kurtosis-tech/kurtosis
Name:            based-op
UUID:            b77df750439b
Status:          RUNNING
Creation Time:   Mon, 17 Feb 2025 08:13:11 CET
Flags:

========================================= Files Artifacts =========================================
UUID   Name

========================================== User Services ==========================================
UUID   Name   Ports   Status

make: *** [run] Error 1

An arm image exists here, and I think it should be possible to use it conditionally
https://github.com/blockscout/blockscout-rs/pkgs/container/smart-contract-verifier

Commit: 67944495d9ffe5de0968dda90f644f32b54186f0

@ManuelBilbao ManuelBilbao linked a pull request Feb 25, 2025 that will close this issue
@ManuelBilbao
Copy link
Collaborator

This should be fixed in #117

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants