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

Issue creating h5py wheel when running on M1 MacBook - trying to 'make run' in api directory #1683

Open
mamsterla opened this issue Aug 3, 2024 · 9 comments
Labels
type: bug Something isn't working

Comments

@mamsterla
Copy link

Bug description

I do a git clone of of the repo and then cd in the api directory and then type 'make run' - I get the following output. I have tried many ways to define HDF5_DIR which do not seem to pass through to the build process:

.....

54.26 running build_ext
54.26 Building h5py requires pkg-config unless the HDF5 path is explicitly specified using the environment variable HDF5_DIR. For more information and details, see https://docs.h5py.org/en/stable/build.html#custom-installation
54.26 error: pkg-config probably not installed: FileNotFoundError(2, 'No such file or directory')
54.26 [end of output]
54.26
54.26 note: This error originates from a subprocess, and is likely not a problem with pip.
54.26 ERROR: Failed building wheel for h5py
54.26 Building wheel for langdetect (setup.py): started
54.56 Building wheel for langdetect (setup.py): finished with status 'done'
54.56 Created wheel for langdetect: filename=langdetect-1.0.9-py3-none-any.whl size=993222 sha256=50e7a1af9ba0ef70e13edfcfc87566758157cf2f97746d1707b9bb01bb286397
54.56 Stored in directory: /root/.cache/pip/wheels/d1/c1/d9/7e068de779d863bc8f8fc9467d85e25cfe47fa5051fff1a1bb
54.57 Building wheel for python-doctr (pyproject.toml): started
54.78 Building wheel for python-doctr (pyproject.toml): finished with status 'done'
54.78 Created wheel for python-doctr: filename=python_doctr-0.9.0a0-py3-none-any.whl size=299068 sha256=80c9749bc081db15f718107d6df35d9c5f6f946fd85f7777b2b506d0be77bef3
54.78 Stored in directory: /root/.cache/pip/wheels/4a/b6/9f/1a0c3bf05bcc97eec54dbf7529ae100ea6e1dbff8a74675bd9
54.78 Successfully built langdetect python-doctr
54.78 Failed to build h5py
54.78 ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (h5py)

failed to solve: process "/bin/sh -c pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt && pip cache purge && rm -rf /root/.cache/pip" did not complete successfully: exit code: 1
make: *** [run] Error 17

Code snippet to reproduce the bug

cd api; make run

Error traceback

Michaels-MacBook-Pro:api mamsterla$ make run
docker compose up -d --build
WARN[0000] /Users/mamsterla/projects/doctr/api/docker-compose.yml: the attribute version is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Building 55.9s (10/11) docker:desktop-linux
=> [web internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 672B 0.0s
=> [web internal] load metadata for docker.io/tiangolo/uvicorn-gunicorn-fastapi:python3.9-slim 0.4s
=> [web internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [web 1/7] FROM docker.io/tiangolo/uvicorn-gunicorn-fastapi:python3.9-slim@sha256:4b52dafa4cf3560a06e8744adae01d1a2cbac771af2f 0.0s
=> [web internal] load build context 0.0s
=> => transferring context: 442B 0.0s
=> CACHED [web 2/7] WORKDIR /app 0.0s
=> CACHED [web 3/7] RUN apt-get update && apt-get install --no-install-recommends git ffmpeg libsm6 libxext6 make -y && 0.0s
=> CACHED [web 4/7] COPY pyproject.toml /app/pyproject.toml 0.0s
=> CACHED [web 5/7] COPY Makefile /app/Makefile 0.0s
=> ERROR [web 6/7] RUN pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt 55.4s

[web 6/7] RUN pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt && pip cache purge && rm -rf /root/.cache/pip:
0.838 Requirement already satisfied: pip in /usr/local/lib/python3.9/site-packages (23.0.1)
0.930 Collecting pip
1.004 Downloading pip-24.2-py3-none-any.whl (1.8 MB)
1.212 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 8.8 MB/s eta 0:00:00
1.223 Requirement already satisfied: setuptools in /usr/local/lib/python3.9/site-packages (58.1.0)
1.381 Collecting setuptools
1.395 Downloading setuptools-72.1.0-py3-none-any.whl (2.3 MB)
1.543 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.3/2.3 MB 16.1 MB/s eta 0:00:00
1.551 Requirement already satisfied: wheel in /usr/local/lib/python3.9/site-packages (0.43.0)
1.722 Installing collected packages: setuptools, pip
1.722 Attempting uninstall: setuptools
1.722 Found existing installation: setuptools 58.1.0
1.736 Uninstalling setuptools-58.1.0:
1.752 Successfully uninstalled setuptools-58.1.0
2.133 Attempting uninstall: pip
2.134 Found existing installation: pip 23.0.1
2.177 Uninstalling pip-23.0.1:
2.206 Successfully uninstalled pip-23.0.1
2.622 Successfully installed pip-24.2 setuptools-72.1.0
2.622 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
2.767 pip install poetry>=1.0
7.781 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, possibly rendering your system unusable.It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv. Use the --root-user-action option if you know what you are doing and want to suppress this warning.
8.018 poetry lock
8.522 Creating virtualenv doctr-api-9TtSrW0h-py3.9 in /root/.cache/pypoetry/virtualenvs
8.765 Updating dependencies
8.765 Resolving dependencies...
31.20
31.20 Writing lock file
31.63 export HDF5_DIR=/opt/homebrew/opt/hdf5; poetry export -f requirements.txt --without-hashes --output requirements.txt
31.87 Warning: poetry-plugin-export will not be installed by default in a future version of Poetry.
31.87 In order to avoid a breaking change and make your automation forward-compatible, please install poetry-plugin-export explicitly. See https://python-poetry.org/docs/plugins/#using-plugins for details on how to install a plugin.
31.87 To disable this warning run 'poetry config warnings.export false'.
32.06 poetry export -f requirements.txt --without-hashes --with dev --output requirements-dev.txt
32.29 Warning: poetry-plugin-export will not be installed by default in a future version of Poetry.
32.29 In order to avoid a breaking change and make your automation forward-compatible, please install poetry-plugin-export explicitly. See https://python-poetry.org/docs/plugins/#using-plugins for details on how to install a plugin.
32.29 To disable this warning run 'poetry config warnings.export false'.
32.66 Ignoring colorama: markers 'python_version >= "3.9" and python_version < "3.12" and platform_system == "Windows"' don't match your environment
32.66 Collecting python-doctr@ git+https://github.com/mindee/doctr.git@a659425ea30324bb8d1e5f742dbfe79a12024354 (from python-doctr[tf]@ git+https://github.com/mindee/doctr.git@a659425ea30324bb8d1e5f742dbfe79a12024354->-r /app/requirements.txt (line 47))
32.66 Cloning https://github.com/mindee/doctr.git (to revision a659425) to /tmp/pip-install-cqe4s511/python-doctr_c6501bdf5a7b4254ba86460b499f5aaa
32.66 Running command git clone --filter=blob:none --quiet https://github.com/mindee/doctr.git /tmp/pip-install-cqe4s511/python-doctr_c6501bdf5a7b4254ba86460b499f5aaa
34.65 Running command git rev-parse -q --verify 'sha^a659425ea30324bb8d1e5f742dbfe79a12024354'
34.65 Running command git fetch -q https://github.com/mindee/doctr.git a659425
35.12 Resolved https://github.com/mindee/doctr.git to commit a659425
35.13 Installing build dependencies: started
36.22 Installing build dependencies: finished with status 'done'
36.22 Getting requirements to build wheel: started
36.38 Getting requirements to build wheel: finished with status 'done'
36.38 Preparing metadata (pyproject.toml): started
36.54 Preparing metadata (pyproject.toml): finished with status 'done'
36.56 Ignoring tensorflow-intel: markers 'python_version >= "3.9" and python_version < "3.12" and platform_system == "Windows"' don't match your environment
36.62 Collecting absl-py==2.1.0 (from -r /app/requirements.txt (line 1))
36.65 Downloading absl_py-2.1.0-py3-none-any.whl.metadata (2.3 kB)
36.67 Collecting annotated-types==0.7.0 (from -r /app/requirements.txt (line 2))
36.69 Downloading annotated_types-0.7.0-py3-none-any.whl.metadata (15 kB)
36.71 Collecting anyascii==0.3.2 (from -r /app/requirements.txt (line 3))
36.72 Downloading anyascii-0.3.2-py3-none-any.whl.metadata (1.5 kB)
36.73 Requirement already satisfied: anyio==4.4.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 4)) (4.4.0)
36.75 Collecting astunparse==1.6.3 (from -r /app/requirements.txt (line 5))
36.76 Downloading astunparse-1.6.3-py2.py3-none-any.whl.metadata (4.4 kB)
36.78 Collecting cachetools==5.4.0 (from -r /app/requirements.txt (line 6))
36.79 Downloading cachetools-5.4.0-py3-none-any.whl.metadata (5.3 kB)
36.80 Requirement already satisfied: certifi==2024.7.4 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 7)) (2024.7.4)
36.80 Requirement already satisfied: charset-normalizer==3.3.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 8)) (3.3.2)
36.80 Requirement already satisfied: click==8.1.7 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 9)) (8.1.7)
36.82 Collecting defusedxml==0.7.1 (from -r /app/requirements.txt (line 11))
36.83 Downloading defusedxml-0.7.1-py2.py3-none-any.whl.metadata (32 kB)
36.83 Requirement already satisfied: exceptiongroup==1.2.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 12)) (1.2.2)
36.89 Collecting fastapi==0.112.0 (from -r /app/requirements.txt (line 13))
36.90 Downloading fastapi-0.112.0-py3-none-any.whl.metadata (27 kB)
36.91 Requirement already satisfied: filelock==3.15.4 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 14)) (3.15.4)
36.93 Collecting flatbuffers==24.3.25 (from -r /app/requirements.txt (line 15))
36.94 Downloading flatbuffers-24.3.25-py2.py3-none-any.whl.metadata (850 bytes)
36.97 Collecting fsspec==2024.6.1 (from -r /app/requirements.txt (line 16))
36.98 Downloading fsspec-2024.6.1-py3-none-any.whl.metadata (11 kB)
37.03 Collecting gast==0.6.0 (from -r /app/requirements.txt (line 17))
37.04 Downloading gast-0.6.0-py3-none-any.whl.metadata (1.3 kB)
37.06 Collecting google-auth-oauthlib==1.2.1 (from -r /app/requirements.txt (line 18))
37.07 Downloading google_auth_oauthlib-1.2.1-py2.py3-none-any.whl.metadata (2.7 kB)
37.14 Collecting google-auth==2.32.0 (from -r /app/requirements.txt (line 19))
37.15 Downloading google_auth-2.32.0-py2.py3-none-any.whl.metadata (4.7 kB)
37.17 Collecting google-pasta==0.2.0 (from -r /app/requirements.txt (line 20))
37.18 Downloading google_pasta-0.2.0-py3-none-any.whl.metadata (814 bytes)
37.52 Collecting grpcio==1.65.4 (from -r /app/requirements.txt (line 21))
37.53 Downloading grpcio-1.65.4-cp39-cp39-manylinux_2_17_aarch64.whl.metadata (3.3 kB)
37.53 Requirement already satisfied: h11==0.14.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 22)) (0.14.0)
37.57 Collecting h5py==3.11.0 (from -r /app/requirements.txt (line 23))
37.59 Downloading h5py-3.11.0.tar.gz (406 kB)
37.65 Installing build dependencies: started
40.71 Installing build dependencies: finished with status 'done'
40.71 Getting requirements to build wheel: started
40.88 Getting requirements to build wheel: finished with status 'done'
40.88 Preparing metadata (pyproject.toml): started
41.05 Preparing metadata (pyproject.toml): finished with status 'done'
41.09 Collecting huggingface-hub==0.24.5 (from -r /app/requirements.txt (line 24))
41.10 Downloading huggingface_hub-0.24.5-py3-none-any.whl.metadata (13 kB)
41.12 Requirement already satisfied: idna==3.7 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 25)) (3.7)
41.12 Requirement already satisfied: importlib-metadata==8.2.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 26)) (8.2.0)
41.14 Collecting keras==2.15.0 (from -r /app/requirements.txt (line 27))
41.15 Downloading keras-2.15.0-py3-none-any.whl.metadata (2.4 kB)
41.17 Collecting langdetect==1.0.9 (from -r /app/requirements.txt (line 28))
41.18 Downloading langdetect-1.0.9.tar.gz (981 kB)
41.21 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 981.5/981.5 kB 31.5 MB/s eta 0:00:00
41.25 Preparing metadata (setup.py): started
41.35 Preparing metadata (setup.py): finished with status 'done'
41.38 Collecting libclang==18.1.1 (from -r /app/requirements.txt (line 29))
41.39 Downloading libclang-18.1.1-py2.py3-none-manylinux2014_aarch64.whl.metadata (5.2 kB)
41.42 Collecting markdown==3.6 (from -r /app/requirements.txt (line 30))
41.42 Downloading Markdown-3.6-py3-none-any.whl.metadata (7.0 kB)
41.43 Requirement already satisfied: markupsafe==2.1.5 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 31)) (2.1.5)
41.46 Collecting ml-dtypes==0.3.2 (from -r /app/requirements.txt (line 32))
41.47 Downloading ml_dtypes-0.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (20 kB)
41.59 Collecting numpy==1.26.4 (from -r /app/requirements.txt (line 33))
41.60 Downloading numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (62 kB)
41.63 Collecting oauthlib==3.2.2 (from -r /app/requirements.txt (line 34))
41.64 Downloading oauthlib-3.2.2-py3-none-any.whl.metadata (7.5 kB)
41.69 Collecting onnx==1.16.2 (from -r /app/requirements.txt (line 35))
41.70 Downloading onnx-1.16.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (16 kB)
41.79 Collecting opencv-python==4.10.0.84 (from -r /app/requirements.txt (line 36))
41.80 Downloading opencv_python-4.10.0.84-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (20 kB)
41.83 Collecting opt-einsum==3.3.0 (from -r /app/requirements.txt (line 37))
41.84 Downloading opt_einsum-3.3.0-py3-none-any.whl.metadata (6.5 kB)
41.84 Requirement already satisfied: packaging==24.1 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 38)) (24.1)
41.96 Collecting pillow==10.4.0 (from -r /app/requirements.txt (line 39))
41.97 Downloading pillow-10.4.0-cp39-cp39-manylinux_2_28_aarch64.whl.metadata (9.2 kB)
42.09 Collecting protobuf==3.20.3 (from -r /app/requirements.txt (line 40))
42.10 Downloading protobuf-3.20.3-cp39-cp39-manylinux2014_aarch64.whl.metadata (698 bytes)
42.12 Collecting pyasn1-modules==0.4.0 (from -r /app/requirements.txt (line 41))
42.13 Downloading pyasn1_modules-0.4.0-py3-none-any.whl.metadata (3.4 kB)
42.16 Collecting pyasn1==0.6.0 (from -r /app/requirements.txt (line 42))
42.17 Downloading pyasn1-0.6.0-py2.py3-none-any.whl.metadata (8.3 kB)
42.21 Collecting pyclipper==1.3.0.post5 (from -r /app/requirements.txt (line 43))
42.22 Downloading pyclipper-1.3.0.post5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (9.0 kB)
42.62 Collecting pydantic-core==2.20.1 (from -r /app/requirements.txt (line 44))
42.64 Downloading pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (6.6 kB)
42.72 Collecting pydantic==2.8.2 (from -r /app/requirements.txt (line 45))
42.73 Downloading pydantic-2.8.2-py3-none-any.whl.metadata (125 kB)
42.82 Collecting pypdfium2==4.30.0 (from -r /app/requirements.txt (line 46))
42.83 Downloading pypdfium2-4.30.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (48 kB)
42.83 Requirement already satisfied: python-multipart==0.0.9 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 48)) (0.0.9)
42.83 Requirement already satisfied: pyyaml==6.0.1 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 49)) (6.0.1)
42.83 Requirement already satisfied: rapidfuzz==3.9.5 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 50)) (3.9.5)
42.85 Collecting requests-oauthlib==2.0.0 (from -r /app/requirements.txt (line 51))
42.87 Downloading requests_oauthlib-2.0.0-py2.py3-none-any.whl.metadata (11 kB)
42.87 Requirement already satisfied: requests==2.32.3 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 52)) (2.32.3)
42.89 Collecting rsa==4.9 (from -r /app/requirements.txt (line 53))
42.90 Downloading rsa-4.9-py3-none-any.whl.metadata (4.2 kB)
42.98 Collecting scipy==1.13.1 (from -r /app/requirements.txt (line 54))
42.99 Downloading scipy-1.13.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (60 kB)
43.00 Requirement already satisfied: setuptools==72.1.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 55)) (72.1.0)
43.06 Collecting shapely==2.0.5 (from -r /app/requirements.txt (line 56))
43.07 Downloading shapely-2.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (7.0 kB)
43.09 Collecting six==1.16.0 (from -r /app/requirements.txt (line 57))
43.11 Downloading six-1.16.0-py2.py3-none-any.whl.metadata (1.8 kB)
43.11 Requirement already satisfied: sniffio==1.3.1 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 58)) (1.3.1)
43.14 Collecting starlette==0.37.2 (from -r /app/requirements.txt (line 59))
43.15 Downloading starlette-0.37.2-py3-none-any.whl.metadata (5.9 kB)
43.17 Collecting tensorboard-data-server==0.7.2 (from -r /app/requirements.txt (line 60))
43.18 Downloading tensorboard_data_server-0.7.2-py3-none-any.whl.metadata (1.1 kB)
43.22 Collecting tensorboard==2.15.2 (from -r /app/requirements.txt (line 61))
43.23 Downloading tensorboard-2.15.2-py3-none-any.whl.metadata (1.7 kB)
43.25 Collecting tensorflow-cpu-aws==2.15.1 (from -r /app/requirements.txt (line 62))
43.26 Downloading tensorflow_cpu_aws-2.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (4.0 kB)
43.29 Collecting tensorflow-estimator==2.15.0 (from -r /app/requirements.txt (line 63))
43.30 Downloading tensorflow_estimator-2.15.0-py2.py3-none-any.whl.metadata (1.3 kB)
43.34 Collecting tensorflow-io-gcs-filesystem==0.37.1 (from -r /app/requirements.txt (line 65))
43.35 Downloading tensorflow_io_gcs_filesystem-0.37.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (14 kB)
43.48 Collecting tensorflow==2.15.1 (from -r /app/requirements.txt (line 66))
43.49 Downloading tensorflow-2.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (3.4 kB)
43.52 Collecting termcolor==2.4.0 (from -r /app/requirements.txt (line 67))
43.53 Downloading termcolor-2.4.0-py3-none-any.whl.metadata (6.1 kB)
43.55 Collecting tf2onnx==1.16.1 (from -r /app/requirements.txt (line 68))
43.56 Downloading tf2onnx-1.16.1-py3-none-any.whl.metadata (1.3 kB)
43.61 Collecting tqdm==4.66.4 (from -r /app/requirements.txt (line 69))
43.62 Downloading tqdm-4.66.4-py3-none-any.whl.metadata (57 kB)
43.62 Requirement already satisfied: typing-extensions==4.12.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 70)) (4.12.2)
43.62 Requirement already satisfied: urllib3==2.2.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 71)) (2.2.2)
43.65 Collecting uvicorn==0.30.5 (from -r /app/requirements.txt (line 72))
43.66 Downloading uvicorn-0.30.5-py3-none-any.whl.metadata (6.6 kB)
43.70 Collecting werkzeug==3.0.3 (from -r /app/requirements.txt (line 73))
43.71 Downloading werkzeug-3.0.3-py3-none-any.whl.metadata (3.7 kB)
43.71 Requirement already satisfied: wheel==0.43.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 74)) (0.43.0)
43.78 Collecting wrapt==1.14.1 (from -r /app/requirements.txt (line 75))
43.79 Downloading wrapt-1.14.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (6.7 kB)
43.79 Requirement already satisfied: zipp==3.19.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 76)) (3.19.2)
44.09 Downloading absl_py-2.1.0-py3-none-any.whl (133 kB)
44.11 Downloading annotated_types-0.7.0-py3-none-any.whl (13 kB)
44.12 Downloading anyascii-0.3.2-py3-none-any.whl (289 kB)
44.14 Downloading astunparse-1.6.3-py2.py3-none-any.whl (12 kB)
44.15 Downloading cachetools-5.4.0-py3-none-any.whl (9.5 kB)
44.17 Downloading defusedxml-0.7.1-py2.py3-none-any.whl (25 kB)
44.18 Downloading fastapi-0.112.0-py3-none-any.whl (93 kB)
44.20 Downloading flatbuffers-24.3.25-py2.py3-none-any.whl (26 kB)
44.22 Downloading fsspec-2024.6.1-py3-none-any.whl (177 kB)
44.23 Downloading gast-0.6.0-py3-none-any.whl (21 kB)
44.25 Downloading google_auth_oauthlib-1.2.1-py2.py3-none-any.whl (24 kB)
44.26 Downloading google_auth-2.32.0-py2.py3-none-any.whl (195 kB)
44.28 Downloading google_pasta-0.2.0-py3-none-any.whl (57 kB)
44.30 Downloading grpcio-1.65.4-cp39-cp39-manylinux_2_17_aarch64.whl (5.4 MB)
44.43 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.4/5.4 MB 40.6 MB/s eta 0:00:00
44.45 Downloading huggingface_hub-0.24.5-py3-none-any.whl (417 kB)
44.48 Downloading keras-2.15.0-py3-none-any.whl (1.7 MB)
44.53 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.7/1.7 MB 28.8 MB/s eta 0:00:00
44.55 Downloading libclang-18.1.1-py2.py3-none-manylinux2014_aarch64.whl (23.8 MB)
45.14 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 23.8/23.8 MB 42.4 MB/s eta 0:00:00
45.16 Downloading Markdown-3.6-py3-none-any.whl (105 kB)
45.17 Downloading ml_dtypes-0.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB)
45.22 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.2/2.2 MB 42.9 MB/s eta 0:00:00
45.24 Downloading numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (14.2 MB)
45.66 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.2/14.2 MB 33.9 MB/s eta 0:00:00
45.67 Downloading oauthlib-3.2.2-py3-none-any.whl (151 kB)
45.69 Downloading onnx-1.16.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.8 MB)
46.05 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 15.8/15.8 MB 43.9 MB/s eta 0:00:00
46.06 Downloading opencv_python-4.10.0.84-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (41.7 MB)
46.96 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.7/41.7 MB 46.7 MB/s eta 0:00:00
46.97 Downloading opt_einsum-3.3.0-py3-none-any.whl (65 kB)
47.01 Downloading pillow-10.4.0-cp39-cp39-manylinux_2_28_aarch64.whl (4.4 MB)
47.12 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.4/4.4 MB 43.1 MB/s eta 0:00:00
47.13 Downloading protobuf-3.20.3-cp39-cp39-manylinux2014_aarch64.whl (918 kB)
47.15 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 918.4/918.4 kB 47.0 MB/s eta 0:00:00
47.16 Downloading pyasn1_modules-0.4.0-py3-none-any.whl (181 kB)
47.18 Downloading pyasn1-0.6.0-py2.py3-none-any.whl (85 kB)
47.20 Downloading pyclipper-1.3.0.post5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (925 kB)
47.22 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 925.3/925.3 kB 37.0 MB/s eta 0:00:00
47.24 Downloading pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB)
47.29 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 38.8 MB/s eta 0:00:00
47.30 Downloading pydantic-2.8.2-py3-none-any.whl (423 kB)
47.32 Downloading pypdfium2-4.30.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.8 MB)
47.39 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.8/2.8 MB 44.4 MB/s eta 0:00:00
47.40 Downloading requests_oauthlib-2.0.0-py2.py3-none-any.whl (24 kB)
47.41 Downloading rsa-4.9-py3-none-any.whl (34 kB)
47.42 Downloading scipy-1.13.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (33.7 MB)
48.32 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 33.7/33.7 MB 37.2 MB/s eta 0:00:00
48.33 Downloading shapely-2.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.4 MB)
48.38 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.4/2.4 MB 43.7 MB/s eta 0:00:00
48.39 Downloading six-1.16.0-py2.py3-none-any.whl (11 kB)
48.40 Downloading starlette-0.37.2-py3-none-any.whl (71 kB)
48.42 Downloading tensorboard_data_server-0.7.2-py3-none-any.whl (2.4 kB)
48.45 Downloading tensorboard-2.15.2-py3-none-any.whl (5.5 MB)
48.67 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.5/5.5 MB 24.2 MB/s eta 0:00:00
48.69 Downloading tensorflow_cpu_aws-2.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (211.8 MB)
53.46 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 211.8/211.8 MB 44.3 MB/s eta 0:00:00
53.47 Downloading tensorflow_estimator-2.15.0-py2.py3-none-any.whl (441 kB)
53.49 Downloading tensorflow_io_gcs_filesystem-0.37.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.8 MB)
53.60 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.8/4.8 MB 47.0 MB/s eta 0:00:00
53.61 Downloading tensorflow-2.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 kB)
53.62 Downloading termcolor-2.4.0-py3-none-any.whl (7.7 kB)
53.64 Downloading tf2onnx-1.16.1-py3-none-any.whl (455 kB)
53.66 Downloading tqdm-4.66.4-py3-none-any.whl (78 kB)
53.68 Downloading uvicorn-0.30.5-py3-none-any.whl (62 kB)
53.69 Downloading werkzeug-3.0.3-py3-none-any.whl (227 kB)
53.72 Downloading wrapt-1.14.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (77 kB)
54.03 Building wheels for collected packages: h5py, langdetect, python-doctr
54.03 Building wheel for h5py (pyproject.toml): started
54.25 Building wheel for h5py (pyproject.toml): finished with status 'error'
54.26 error: subprocess-exited-with-error
54.26
54.26 × Building wheel for h5py (pyproject.toml) did not run successfully.
54.26 │ exit code: 1
54.26 ╰─> [75 lines of output]
54.26 running bdist_wheel
54.26 running build
54.26 running build_py
54.26 creating build
54.26 creating build/lib.linux-aarch64-cpython-39
54.26 creating build/lib.linux-aarch64-cpython-39/h5py
54.26 copying h5py/version.py -> build/lib.linux-aarch64-cpython-39/h5py
54.26 copying h5py/ipy_completer.py -> build/lib.linux-aarch64-cpython-39/h5py
54.26 copying h5py/init.py -> build/lib.linux-aarch64-cpython-39/h5py
54.26 copying h5py/h5py_warnings.py -> build/lib.linux-aarch64-cpython-39/h5py
54.26 creating build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/dims.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/filters.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/vds.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/datatype.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/selections.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/init.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/selections2.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/dataset.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/compat.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/base.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/files.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/attrs.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 copying h5py/_hl/group.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl
54.26 creating build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/common.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_dims_dimensionproxy.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_h5f.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_slicing.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_attrs.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_h5z.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_file_image.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_dataset_getitem.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_h5p.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_h5t.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_attribute_create.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/conftest.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_dtype.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_base.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_group.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_filters.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_ros3.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_big_endian_file.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_objects.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_dimension_scales.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/init.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_file_alignment.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_dataset_swmr.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_selections.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_datatype.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_attrs_data.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_file2.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_completions.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_file.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_h5d_direct_chunk.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_dataset.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_h5.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_errors.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_h5pl.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 copying h5py/tests/test_h5o.py -> build/lib.linux-aarch64-cpython-39/h5py/tests
54.26 creating build/lib.linux-aarch64-cpython-39/h5py/tests/data_files
54.26 copying h5py/tests/data_files/init.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/data_files
54.26 creating build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds
54.26 copying h5py/tests/test_vds/test_virtual_source.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds
54.26 copying h5py/tests/test_vds/test_highlevel_vds.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds
54.26 copying h5py/tests/test_vds/init.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds
54.26 copying h5py/tests/test_vds/test_lowlevel_vds.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds
54.26 copying h5py/tests/data_files/vlen_string_s390x.h5 -> build/lib.linux-aarch64-cpython-39/h5py/tests/data_files
54.26 copying h5py/tests/data_files/vlen_string_dset.h5 -> build/lib.linux-aarch64-cpython-39/h5py/tests/data_files
54.26 copying h5py/tests/data_files/vlen_string_dset_utc.h5 -> build/lib.linux-aarch64-cpython-39/h5py/tests/data_files
54.26 warning: build_py: byte-compiling is disabled, skipping.
54.26
54.26 running build_ext
54.26 Building h5py requires pkg-config unless the HDF5 path is explicitly specified using the environment variable HDF5_DIR. For more information and details, see https://docs.h5py.org/en/stable/build.html#custom-installation
54.26 error: pkg-config probably not installed: FileNotFoundError(2, 'No such file or directory')
54.26 [end of output]
54.26
54.26 note: This error originates from a subprocess, and is likely not a problem with pip.
54.26 ERROR: Failed building wheel for h5py
54.26 Building wheel for langdetect (setup.py): started
54.56 Building wheel for langdetect (setup.py): finished with status 'done'
54.56 Created wheel for langdetect: filename=langdetect-1.0.9-py3-none-any.whl size=993222 sha256=50e7a1af9ba0ef70e13edfcfc87566758157cf2f97746d1707b9bb01bb286397
54.56 Stored in directory: /root/.cache/pip/wheels/d1/c1/d9/7e068de779d863bc8f8fc9467d85e25cfe47fa5051fff1a1bb
54.57 Building wheel for python-doctr (pyproject.toml): started
54.78 Building wheel for python-doctr (pyproject.toml): finished with status 'done'
54.78 Created wheel for python-doctr: filename=python_doctr-0.9.0a0-py3-none-any.whl size=299068 sha256=80c9749bc081db15f718107d6df35d9c5f6f946fd85f7777b2b506d0be77bef3
54.78 Stored in directory: /root/.cache/pip/wheels/4a/b6/9f/1a0c3bf05bcc97eec54dbf7529ae100ea6e1dbff8a74675bd9
54.78 Successfully built langdetect python-doctr
54.78 Failed to build h5py
54.78 ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (h5py)


failed to solve: process "/bin/sh -c pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt && pip cache purge && rm -rf /root/.cache/pip" did not complete successfully: exit code: 1
make: *** [run] Error 17

Environment

MacBook Pro M1 - Sonoma 14.5
Pyenv installed - configured with Python 3.10.14

Deep Learning backend

N/A

@mamsterla mamsterla added the type: bug Something isn't working label Aug 3, 2024
@felixdittrich92
Copy link
Contributor

felixdittrich92 commented Aug 5, 2024

Hi @mamsterla 👋,

Thanks for reporting.
Unfortunately i wasn't able to reproduce your issue :/

cd api
make run
INFO:     Will watch for changes in these directories: ['/app']
INFO:     Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit)
INFO:     Started reloader process [1] using WatchFiles
2024-08-05 07:28:19.085788: I tensorflow/core/util/port.cc:113] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.
2024-08-05 07:28:19.086951: I external/local_tsl/tsl/cuda/cudart_stub.cc:31] Could not find cuda drivers on your machine, GPU will not be used.
2024-08-05 07:28:19.103180: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:9261] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered
2024-08-05 07:28:19.103199: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:607] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered
2024-08-05 07:28:19.103729: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1515] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered
2024-08-05 07:28:19.106522: I external/local_tsl/tsl/cuda/cudart_stub.cc:31] Could not find cuda drivers on your machine, GPU will not be used.
2024-08-05 07:28:19.106658: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 AVX_VNNI FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
2024-08-05 07:28:19.470437: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
INFO:     Started server process [8]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     172.18.0.1:57114 - "GET / HTTP/1.1" 404 Not Found
INFO:     172.18.0.1:57114 - "GET /favicon.ico HTTP/1.1" 404 Not Found
INFO:     172.18.0.1:57114 - "GET /docs HTTP/1.1" 200 OK
/usr/local/lib/python3.9/site-packages/pydantic/json_schema.py:2179: PydanticJsonSchemaWarning: Default value [File(PydanticUndefined)] is not JSON serializable; excluding default from JSON schema [non-serializable-default]
  warnings.warn(message, PydanticJsonSchemaWarning)
INFO:     172.18.0.1:57114 - "GET /openapi.json HTTP/1.1" 200 OK

@mamsterla
Copy link
Author

mamsterla commented Aug 6, 2024 via email

@felixdittrich92
Copy link
Contributor

Hi @mamsterla 👋,

No i am on a linux machine (unfortunately i haven't a mac) but with make run the api is containerized via docker so this shouldn't make a difference.

If you try to install h5py standalone with pip on your machine does it work ?

@mamsterla
Copy link
Author

mamsterla commented Aug 6, 2024 via email

@mmroden
Copy link

mmroden commented Aug 13, 2024

For what it's worth, I can reproduce @mamsterla's error on an m2 mac running 13.6.7.

It appears that the OS does make a difference, from what I can see.

`104.2 note: This error originates from a subprocess, and is likely not a problem with pip.
104.2 ERROR: Failed building wheel for h5py
104.2 Building wheel for langdetect (setup.py): started
104.5 Building wheel for langdetect (setup.py): finished with status 'done'
104.5 Created wheel for langdetect: filename=langdetect-1.0.9-py3-none-any.whl size=993221 sha256=7a17c910eac746923e68559f44c31c768cceedf182566fa4065cc2fdf74190fc
104.5 Stored in directory: /root/.cache/pip/wheels/d1/c1/d9/7e068de779d863bc8f8fc9467d85e25cfe47fa5051fff1a1bb
104.5 Building wheel for python-doctr (pyproject.toml): started
104.7 Building wheel for python-doctr (pyproject.toml): finished with status 'done'
104.7 Created wheel for python-doctr: filename=python_doctr-0.9.1a0-py3-none-any.whl size=299517 sha256=9aa29437f23f6d867fb00432855690150e1541d7309e9b80e36377428aa06449
104.7 Stored in directory: /root/.cache/pip/wheels/92/73/83/54e1a3424f829899ce15c8dce692a3cb5680f0ffd71524fa01
104.7 Successfully built langdetect python-doctr
104.7 Failed to build h5py
104.7 ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (h5py)

failed to solve: process "/bin/sh -c pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt && pip cache purge && rm -rf /root/.cache/pip" did not complete successfully: exit code: 1
make: *** [run] Error 17`

@mamsterla
Copy link
Author

mamsterla commented Aug 13, 2024 via email

@felixdittrich92
Copy link
Contributor

@mamsterla @mmroden
Could you try to replace the Dockerfile with the following (dirty try) and run cd api && make run again ?

FROM nvidia/cuda:12.1.0-base-ubuntu22.04

WORKDIR /app

# Set up PATH for Conda
ENV PATH="/root/miniconda3/bin:${PATH}"

RUN apt-get -y update \
    && apt-get install --no-install-recommends git ffmpeg libsm6 libxext6 make wget -y \
    && apt-get autoremove -y \
    && rm -rf /var/lib/apt/lists/*

# Copy project files
COPY app /app/app

# Install Miniconda
RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \
    && bash Miniconda3-latest-Linux-x86_64.sh -b -p /root/miniconda3 \
    && rm -f Miniconda3-latest-Linux-x86_64.sh

# Initialize Conda and create environment
RUN /root/miniconda3/bin/conda init bash \
    && /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda create -n doctr-api python=3.9 -y"

# Activate environment and install dependencies
RUN /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda activate doctr-api && conda install h5py -y"
RUN /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda activate doctr-api && pip install python-doctr[tf]@git+https://github.com/mindee/doctr.git fastapi uvicorn python-multipart"

# Create the entrypoint script directly within the Dockerfile
RUN echo '#!/bin/bash' > /entrypoint.sh && \
    echo 'source /root/miniconda3/etc/profile.d/conda.sh' >> /entrypoint.sh && \
    echo 'conda activate doctr-api' >> /entrypoint.sh && \
    echo 'exec "$@"' >> /entrypoint.sh && \
    chmod +x /entrypoint.sh

# Set the entrypoint to use the script
ENTRYPOINT ["/entrypoint.sh"]

The key difference is that we don't need to build h5py here we make use of the already compiled binary from anaconda

This is definitely not recommended

@mamsterla
Copy link
Author

mamsterla commented Aug 21, 2024 via email

@mamsterla
Copy link
Author

mamsterla commented Aug 21, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants