ohsu-comp-bio / funnel

Funnel is a toolkit for distributed task execution via a simple, standard API.
https://ohsu-comp-bio.github.io/funnel
MIT License
121 stars 32 forks source link

The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested #797

Closed Ramakant701 closed 4 months ago

Ramakant701 commented 8 months ago

Using Mac Apple M2 Pro Running nextflow run main.nf -profile test,docker -with-docker alpine -plugins nf-ga4gh,nf-tower --outdir local Error: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested

I have already tried colima which ends up giving different errro: error response from daemon: client version 1.44 is too new

lbeckman314 commented 7 months ago

Hi @Ramakant701 thank you for bringing this to our attention! We are currently deprecating the Docker Hub repository and have moved the newest images to Quay.io — these images should have support for the linux/arm64/v8 platform.

Image Source

Quay.io ✅ https://quay.io/repository/ohsu-comp-bio/funnel?tab=tags

Docker Hub ❌ https://hub.docker.com/r/ohsucompbio/funnel

Running Nextflow (Default)

When running the command you listed we encountered a "unable to start container process: exec: "/bin/bash": stat /bin/bash: no such file or directory" error, which may be due to a slight difference in local configuration.

Changing the Docker image to from Alpine to Ubuntu resolved this error, and when run against nf-canary returned successfully results:

nextflow run main.nf -profile test,docker -with-docker ubuntu -plugins nf-ga4gh,nf-tower --outdir local
N E X T F L O W  ~  version 23.08.0-edge
Launching `main.nf` [mad_perlman] DSL2 - revision: c4fee08c84
WARN: Access to undefined parameter `remoteFile` -- Initialise it to a default value eg. `params.remoteFile = some_value`
executor >  local (12)
[52/f784bc] process > NF_CANARY:TEST_SUCCESS            [100%] 1 of 1 ✔
[cb/85ce31] process > NF_CANARY:TEST_CREATE_FILE        [100%] 1 of 1 ✔
[85/7cb95a] process > NF_CANARY:TEST_CREATE_FOLDER      [100%] 1 of 1 ✔
[d1/9db76e] process > NF_CANARY:TEST_INPUT (1)          [100%] 1 of 1 ✔
[87/c97e42] process > NF_CANARY:TEST_BIN_SCRIPT         [100%] 1 of 1 ✔
[-        ] process > NF_CANARY:TEST_STAGE_REMOTE       -
[f1/efb431] process > NF_CANARY:TEST_PASS_FILE          [100%] 1 of 1 ✔
[77/6972ab] process > NF_CANARY:TEST_PASS_FOLDER        [100%] 1 of 1 ✔
[e2/6270eb] process > NF_CANARY:TEST_PUBLISH_FILE       [100%] 1 of 1 ✔
[5c/721c09] process > NF_CANARY:TEST_PUBLISH_FOLDER     [100%] 1 of 1 ✔
[5f/e88a92] process > NF_CANARY:TEST_IGNORED_FAIL       [100%] 1 of 1, failed: 1 ✔
[24/0e48ec] process > NF_CANARY:TEST_MV_FILE            [100%] 1 of 1 ✔
[0e/0c349d] process > NF_CANARY:TEST_MV_FOLDER_CONTENTS [100%] 1 of 1 ✔
[5f/e88a92] NOTE: Process `NF_CANARY:TEST_IGNORED_FAIL` terminated with an error exit status (1) -- Error is ignored

Running Nextflow with Funnel

This local test script demonstrates how to connect Funnel (or any TES executor) to Nextflow:

https://github.com/nextflow-io/nextflow/pull/4608#issuecomment-1936626983

Haven't tested against Colima but can try that and update here. Also happy to help take a look at the Nextflow or Funnel configs that you are working with to see what the cause of the issue may be!