justin13601 / AnnoDash

A clinical terminology annotation dashboard created using Plotly Dash & the MIMIC-IV database.
MIT License
7 stars 3 forks source link

BUG: Incompatible with my local environment #14

Open LCCarmody opened 9 months ago

LCCarmody commented 9 months ago

I am running Python 3.9.6 and cannot figure out how to build your docker image. First issue appears to be that "coady/pylucene:8.11" in dockerfile is outdated. Changing it to 'coady/pylucene' allows me to advance, but I run into constant other issues after that

Do you have an updated version for Python 3 or venv? I am a curator and not a coder so this is not as straight forward for me.

Thank you.

justin13601 commented 9 months ago

Hi @LCCarmody, what sort of issues are you running into after changing it to 'coady/pylucene'? I hadn't realized 'coady/pylucene:8.11' became outdated, but I can try to look into this.

LCCarmody commented 9 months ago

The error I get is: "[+] Building 1.2s (4/4) FINISHED docker:desktop-linux => [internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => [internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 353B 0.0s => ERROR [internal] load metadata for docker.io/coady/pylucene:8.11 1.2s => [auth] coady/pylucene:pull token for registry-1.docker.io 0.0s

[internal] load metadata for docker.io/coady/pylucene:8.11:

Dockerfile:1

1 | >>> FROM coady/pylucene:8.11 2 |
3 | COPY requirements.txt ./requirements.txt

ERROR: failed to solve: coady/pylucene:8.11: docker.io/coady/pylucene:8.11: not found "

justin13601 commented 9 months ago

Is this after you changed it to coady/pylucene? It seems to still say 8.11. It looks like the author of pylucene's docker image removed version 8.11.

Can you send me the error once you change it to coady/pylucene? Could you also try coady/pylucene:8 to see if that fixes the issue? The dashboard simply loads a pylucene image, but if it's no longer supported, we can try to disable it and load the dashboard without pylucene search.

LCCarmody commented 9 months ago

Ifi I remove "8.11", Then my error is as follows, "carmol@MLG-JGM383 src % docker build -t annodash .. [+] Building 1.1s (9/11) docker:desktop-linux => [internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 348B 0.0s => [internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => [internal] load metadata for docker.io/coady/pylucene:latest 0.7s => [auth] coady/pylucene:pull token for registry-1.docker.io 0.0s => [internal] load build context 0.1s => => transferring context: 36.36kB 0.1s => [1/6] FROM docker.io/coady/pylucene@sha256:760a58373825bac97a81067f70 0.0s => CACHED [2/6] COPY requirements.txt ./requirements.txt 0.0s => CACHED [3/6] RUN pip install pip==20.0.2 0.0s => ERROR [4/6] RUN pip install -r requirements.txt 0.3s


[4/6] RUN pip install -r requirements.txt:
0.267 Traceback (most recent call last):
0.267 File "/usr/local/bin/pip", line 5, in
0.267 from pip._internal.cli.main import main
0.267 File "/usr/local/lib/python3.12/site-packages/pip/_internal/cli/main.py", line 10, in 0.268 from pip._internal.cli.autocompletion import autocomplete 0.268 File "/usr/local/lib/python3.12/site-packages/pip/_internal/cli/autocompletion.py", line 9, in 0.268 from pip._internal.cli.main_parser import create_main_parser 0.268 File "/usr/local/lib/python3.12/site-packages/pip/_internal/cli/main_parser.py", line 7, in 0.268 from pip._internal.cli import cmdoptions 0.268 File "/usr/local/lib/python3.12/site-packages/pip/_internal/cli/cmdoptions.py", line 27, in 0.269 from pip._internal.models.index import PyPI 0.269 File "/usr/local/lib/python3.12/site-packages/pip/_internal/models/index.py", line 1, in 0.269 from pip._vendor.six.moves.urllib import parse as urllib_parse 0.269 ModuleNotFoundError: No module named 'pip._vendor.six.moves'

Dockerfile:5

3 | COPY requirements.txt ./requirements.txt 4 | RUN pip install pip==20.0.2 5 | >>> RUN pip install -r requirements.txt 6 |
7 | COPY . ./

ERROR: failed to solve: process "/bin/sh -c pip install -r requirements.txt" did not complete successfully: exit code: 1"

justin13601 commented 9 months ago

It seems that the error is caused when there's a mismatch of python versions. The latest version of coady/pylucene uses 3.12.1 python - is there any chance you could try to install it on that?

LCCarmody commented 9 months ago

I was able update python. It initially gave me errors of 'ModuleNotFoundError: No module named 'yaml'' so I thought that that one of the packages might need to be updated...so I made sure everything was up-to-date. However, now the error is 'ModuleNotFoundError: No module named 'ml_collections'', which I've been down this rabbit hole before where all of the requirement packages are not updated.

justin13601 commented 9 months ago

Are you using the Dockerfile or the docker-compose.yaml file?

As for the missing packages error, try manually copying the contents of requirements.txt in the repo to a text file in your working directory, and then running pip install -r requirements.txt. That file includes yaml and also ml_collections.

LCCarmody commented 9 months ago

I have tried both and get errors either way. Thank you for your time and quick answers. Is there anyway we could set up a time to chat? Maybe later next week (Tuesday-Friday)? If not, no worries.

I am leigh.carmody at jax org