Dear committee, I have trouble understanding the output of task2. The first is about docker image due to CPU architecture platform. Because the provided docker has been built in arm platform, i could not run it in amd64 platform computer. ``` $ docker run -it --name base_model docker.synapse.org/syn51198355/base_model:v3 /bin/bash WARNING: The requested image's platform (linux/arm64/v8) does not match the detected host platform (linux/amd64) and no specific platform was requested standard_init_linux.go:228: exec user process caused: exec format error ``` In addition, when i run docker image with arm64 of my colleague' computer, i found "base_model.py" in container. However, i did not found test any CSV file in container. Could you build multi-platform docker image? and include test csv file in it? Thank you very much Best regards, Ho Heon

Created by Ho Heon Kim hoheon
@dengkw , Apologies for that! Let me look into the issues and get back to you ASAP.
Dear @vchung, I still have some issues with submitting the evaluating docker images. I tried to submit the base_model:v4 from your "Docker" directly, but it returned the error said: ``` STDERR: 2023-07-20T13:18:42.450228106Z INFO:cwltool:['docker', 'pull', 'docker.synapse.org/syn51198356/evaluation:v4'] STDERR: 2023-07-20T13:18:42.450231460Z Error response from daemon: pull access denied for docker.synapse.org/syn51198356/evaluation, repository does not exist or may require 'docker login': denied: requested access to the resource is denied ``` Are there any other operations I need to do to make a successful submission? Thank you very much! Best, Kaiwen
@hoheon , @NickL , We are writing to let you know that a new version of the baseline model (`v4`, `v4-arm64`) has been released today, due to the recent change of what input data will be mounted during your submissions. Previously, the plan was to mount two volumes: `/input` and `/output`, but an additional volume will now be mounted as well: `/test`. See the [Submission Tutorial (Docker)](https://www.synapse.org/#!Synapse:syn51198355/wiki/622697) for more details. You can pull the latest baseline model version with: ```sh docker pull docker.synapse.org/syn51198355/base_model:v4 ``` or: ```sh docker pull docker.synapse.org/syn51198355/base_model:v4-arm64 ``` To locally run the baseline, the command will now be: ```sh docker run --rm \ --network none \ --volume /path/to/dummy_task2:/input:ro \ --volume /path/to/dummy_task2_test:/test:ro \ --volume /path/to/output:/output:rw \ docker.synapse.org/syn51198355/base_model:v4 ``` Apologies for the inconvenience!
Dear @vchung, thank you very much for your help! The error was indeed due to the formatting of directories. Also, the arm64 build seems to run much faster in my setup. Thanks for re-uploading!
@NickL , The error is actually from the `docker run` command, in that absolute paths must be specified when mounting volumes, e.g. ```bash docker run --rm \ --network none \ --volume /path/to/dummy_task2:/input:ro \ --volume /path/to/output:/output:rw \ docker.synapse.org/syn51198355/base_model:v3 ``` In the sample command above, I use `$PWD` as a shortcut for printing the working directory starting at root. As far as I'm aware, using relative paths will not work. That being said, we have also rebuilt the baseline model for the Arm 64-bit architecture, which can be pulled with ```bash docker pull docker.synapse.org/syn51198355/base_model:v3-arm64 ``` Hope this helps!
Hi @vchung, I have some related issues with the docker image. I pulled the updated image and I get the following errors when I run it: ``` ~ docker run --rm --network none --volume dummy_task2:/input:ro --volume output:/output:rw docker.synapse.org/syn51198355/base_model:v3 WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested Traceback (most recent call last): File "/usr/local/bin/base_model.py", line 194, in typer.run(main) File "/usr/local/bin/base_model.py", line 186, in main process_raw_data(input_dir, select_diseases) File "/usr/local/bin/base_model.py", line 52, in process_raw_data X = pd.concat(dfs, axis=0, ignore_index=True) File "/usr/local/lib/python3.10/site-packages/pandas/core/reshape/concat.py", line 372, in concat op = _Concatenator( File "/usr/local/lib/python3.10/site-packages/pandas/core/reshape/concat.py", line 429, in __init__ raise ValueError("No objects to concatenate") ValueError: No objects to concatenate ``` I am wondering if this error is due to mismatched cpu architecture. The warning message shows the exact opposite of what @hoheon inquired about, and I'm assuming it is because the docker image has been updated since. So my question is, is there a way I could get the previous linux/arm64 build image again? or are there other ways to fix this problem? Thank you in advance. Nick
vchung, Thank you for your kind explanation!
Dear @hoheon , Thank you for notifying us of the issues with running the baseline model! We have since corrected and updated the build. You may pull the latest changes with: ```bash docker pull docker.synapse.org/syn51198355/base_model:v3 ``` When running your models, we will be mounting the input data as `/input`. Therefore, when running the baseline, we recommend mounting some data as `/input` as well - for this, you may use the [provided synthetic data](syn51614785): ```bash docker run --rm \ --network none \ --volume $PWD/dummy_task2:/input:ro \ --volume $PWD/output:/output:rw \ docker.synapse.org/syn51198355/base_model:v3 ``` Hope this helps! EDIT: fixed typo in the docker run command

Docker build platform / Empty dataset page is loading…