su77ungr / CASALIOY

♾️ toolkit for air-gapped LLMs on consumer-grade hardware
Apache License 2.0
230 stars 31 forks source link

Fail to build image from Dockerfile #83

Open mlynar-czyk opened 1 year ago

mlynar-czyk commented 1 year ago

.env

# Generic
TEXT_EMBEDDINGS_MODEL=sentence-transformers/all-MiniLM-L6-v2
TEXT_EMBEDDINGS_MODEL_TYPE=HF  # LlamaCpp or HF
USE_MLOCK=true

# Ingestion
PERSIST_DIRECTORY=db
DOCUMENTS_DIRECTORY=source_documents
INGEST_CHUNK_SIZE=500
INGEST_CHUNK_OVERLAP=50

# Generation
MODEL_TYPE=LlamaCpp # GPT4All or LlamaCpp
MODEL_PATH=eachadea/ggml-vicuna-7b-1.1/ggml-vic7b-q5_1.bin
MODEL_TEMP=0.8
MODEL_N_CTX=1024  # Max total size of prompt+answer
MODEL_MAX_TOKENS=256  # Max size of answer
MODEL_STOP=[STOP]
CHAIN_TYPE=betterstuff
N_RETRIEVE_DOCUMENTS=100 # How many documents to retrieve from the db
N_FORWARD_DOCUMENTS=100 # How many documents to forward to the LLM, chosen among those retrieved
N_GPU_LAYERS=4

Python version

python 3.11

System

Windows 10

CASALIOY version

e72bcd5

Information

Related Components

Reproduction

When trying to build the image from the Dockerfile, the poetry install seems not to behave as intended.

[+] Building 144.9s (11/16)
 => [internal] load .dockerignore                                                                   0.0s 
 => => transferring context: 2B                                                                     0.0s 
 => [internal] load build definition from Dockerfile                                                0.0s 
 => => transferring dockerfile: 561B                                                                0.0s 
 => [internal] load metadata for docker.io/library/python:3.11                                      0.5s 
 => [internal] load build context                                                                   0.0s 
 => => transferring context: 33B                                                                    0.0s 
 => [ 1/12] FROM docker.io/library/python:3.11@sha256:b9683fa80e22970150741c974f45bf1d25856bd76443  0.0s 
 => CACHED [ 2/12] WORKDIR /srv                                                                     0.0s 
 => CACHED [ 3/12] RUN git clone https://github.com/su77ungr/CASALIOY.git                           0.0s 
 => CACHED [ 4/12] WORKDIR CASALIOY                                                                 0.0s 
 => CACHED [ 5/12] RUN pip3 install poetry                                                          0.0s 
 => CACHED [ 6/12] RUN python3 -m poetry config virtualenvs.create false                            0.0s 
 => ERROR [ 7/12] RUN python3 -m poetry install                                                   144.3s 
------
 > [ 7/12] RUN python3 -m poetry install:
#10 0.953 Skipping virtualenv creation, as specified in config file.
#10 1.830 Installing dependencies from lock file
#10 5.362
#10 5.362 Package operations: 157 installs, 3 updates, 0 removals
#10 5.364
#10 5.367   • Installing markupsafe (2.1.2)
#10 5.371   • Installing numpy (1.23.5)
#10 5.372   • Installing python-dateutil (2.8.2)
#10 5.374   • Installing pytz (2023.3)
#10 5.376   • Installing sniffio (1.3.0)
#10 5.377   • Installing tzdata (2023.3)
#10 11.31   • Installing anyio (3.6.2)
#10 11.31   • Installing commonmark (0.9.1)
#10 11.32   • Installing entrypoints (0.4)
#10 11.32   • Installing decorator (5.1.1)
#10 11.32   • Installing mpmath (1.3.0)
#10 11.33   • Installing h11 (0.14.0)
#10 11.33   • Installing pygments (2.15.1)
#10 11.33   • Installing jinja2 (3.1.2)
#10 11.34   • Installing soupsieve (2.4.1)
#10 11.35   • Installing pytz-deprecation-shim (0.1.0.post0)
#10 11.35   • Installing pandas (1.5.3)
#10 11.36   • Installing olefile (0.46)
#10 11.88   • Installing toolz (0.12.0)
#10 17.02   • Installing altair (4.2.2)
#10 17.02   • Installing beautifulsoup4 (4.12.2)
#10 17.02   • Installing blinker (1.6.2)
#10 17.02   • Installing cachetools (5.3.0)
#10 17.03   • Installing click (8.1.3)
#10 17.03   • Installing colorclass (2.2.2)
#10 17.04   • Installing contourpy (1.0.7)
#10 17.04   • Installing cycler (0.11.0)
#10 17.04   • Installing easygui (0.98.3)
#10 17.05   • Installing frozenlist (1.3.3)
#10 17.05   • Installing fsspec (2023.5.0)
#10 17.06   • Installing fonttools (4.39.4)
#10 17.26 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#10 17.33 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#10 17.71   • Installing hpack (4.0.0)
#10 17.73   • Installing httpcore (0.16.3)
#10 17.81   • Installing hyperframe (6.0.1)
#10 17.93   • Installing kiwisolver (1.4.4)
#10 18.16   • Installing markdown (3.4.3)
#10 18.25   • Installing marshmallow (3.19.0)
#10 18.30   • Installing msoffcrypto-tool (5.0.1)
#10 18.52   • Installing multidict (6.0.4)
#10 18.54   • Installing mypy-extensions (1.0.0)
#10 18.68   • Installing networkx (3.1)
#10 18.92   • Installing pcodedmp (1.2.6)
#10 19.08   • Installing pillow (9.5.0)
#10 19.26   • Installing protobuf (4.23.0)
#10 19.27   • Installing pyarrow (12.0.0)
#10 19.29   • Installing pympler (1.0.1)
#10 19.39   • Installing pyparsing (2.4.7)
#10 19.64   • Installing pyyaml (6.0)
#10 19.67   • Installing rfc3986 (1.5.0)
#10 19.74   • Installing rich (13.0.1)
#10 20.15   • Installing sympy (1.12)
#10 20.60   • Installing tenacity (8.2.2)
#10 20.91   • Installing toml (0.10.2)
#10 21.45   • Installing tqdm (4.65.0)
#10 21.49   • Installing typing-extensions (4.5.0)
#10 21.53   • Installing tzlocal (4.2)
#10 21.61   • Installing validators (0.20.0)
#10 21.75   • Installing watchdog (3.0.0)
#10 22.25   • Installing wrapt (1.14.1)
#10 35.52   • Installing aiosignal (1.3.1)
#10 35.52   • Installing async-timeout (4.0.2)
#10 35.52   • Installing backoff (2.2.1)
#10 35.53   • Installing deprecated (1.2.13)
#10 35.53   • Installing et-xmlfile (1.1.0)
#10 35.53   • Installing faker (18.9.0)
#10 35.54   • Installing favicon (0.7.0)
#10 35.54   • Installing greenlet (2.0.2)
#10 35.55   • Installing grpcio (1.54.2)
#10 35.56   • Installing h2 (4.1.0)
#10 35.56   • Installing httpx (0.23.3)
#10 35.57   • Installing htbuilder (0.6.1)
#10 35.79 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#10 35.80 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#10 36.37   • Installing huggingface-hub (0.14.1)
#10 36.39   • Installing joblib (1.2.0)
#10 36.41   • Installing lark-parser (0.12.0)
#10 36.44   • Installing lxml (4.9.2)
#10 36.44   • Installing marshmallow-enum (1.5.1)
#10 36.64   • Installing matplotlib (3.7.1)
#10 36.73   • Installing monotonic (1.6)
#10 37.37   • Installing oletools (0.60.1)
#10 37.38   • Updating platformdirs (2.6.2 -> 3.5.1)
#10 37.60   • Installing pydantic (1.10.7)
#10 38.53   • Installing pymdown-extensions (10.0.1)
#10 39.03   • Installing regex (2023.5.5)
#10 39.29   • Installing requests-file (1.5.1)
#10 40.00   • Installing scipy (1.10.1)
#10 40.41   • Updating setuptools (65.5.1 -> 67.7.2)
#10 40.78   • Installing streamlit (1.22.0 0b7fb1c)
#10 40.79   • Installing threadpoolctl (3.1.0)
#10 41.41   • Installing tokenizers (0.13.3)
#10 41.42   • Installing torch (2.0.1)
#10 41.97   • Installing typer (0.7.0)
#10 42.66   • Installing typing-inspect (0.8.0)
#10 43.39   • Installing xlsxwriter (3.1.0)
#10 44.94   • Installing yarl (1.9.2)
#10 52.01
#10 52.01   IncompleteRead
#10 52.01
#10 52.01   IncompleteRead(7019 bytes read, 1174 more expected)
#10 52.01
#10 52.01   at /usr/local/lib/python3.11/http/client.py:633 in _safe_read
#10 52.13        629│         IncompleteRead exception can be used to detect the problem.
#10 52.13        630│         """
#10 52.14        631│         data = self.fp.read(amt)
#10 52.14        632│         if len(data) < amt:
#10 52.14     →  633│             raise IncompleteRead(data, amt-len(data))
#10 52.14        634│         return data
#10 52.14        635│
#10 52.14        636│     def _safe_readinto(self, b):
#10 52.14        637│         """Same as _safe_read, but for reading into a buffer."""
#10 52.14
#10 52.14 The following error occurred when trying to handle this error:
#10 52.14
#10 52.14
#10 52.14   IncompleteRead
#10 52.14
#10 52.14   IncompleteRead(0 bytes read)
#10 52.14
#10 52.15   at /usr/local/lib/python3.11/http/client.py:598 in _read_chunked
#10 52.27        594│                     amt -= chunk_left
#10 52.27        595│                 self.chunk_left = 0
#10 52.27        596│             return b''.join(value)
#10 52.27        597│         except IncompleteRead as exc:
#10 52.27     →  598│             raise IncompleteRead(b''.join(value)) from exc
#10 52.28        599│
#10 52.28        600│     def _readinto_chunked(self, b):
#10 52.28        601│         assert self.chunked != _UNKNOWN
#10 52.28        602│         total_bytes = 0
#10 52.28
#10 52.28 The following error occurred when trying to handle this error:
#10 52.28
#10 52.28
#10 52.28   ProtocolError
#10 52.28
#10 52.28   ('Connection broken: IncompleteRead(0 bytes read)', IncompleteRead(0 bytes read))
#10 52.29
#10 52.29   at /usr/local/lib/python3.11/site-packages/urllib3/response.py:461 in _error_catcher
#10 52.36       457│                 raise ReadTimeoutError(self._pool, None, "Read timed out.")
#10 52.36       458│
#10 52.36       459│             except (HTTPException, SocketError) as e:
#10 52.36       460│                 # This includes IncompleteRead.
#10 52.36     → 461│                 raise ProtocolError("Connection broken: %r" % e, e)
#10 52.36       462│
#10 52.36       463│             # If no exception is thrown, we should avoid cleaning up
#10 52.37       464│             # unnecessarily.
#10 52.37       465│             clean_exit = True
#10 52.37
------
Dockerfile:9
--------------------
   7 |     RUN pip3 install poetry
   8 |     RUN python3 -m poetry config virtualenvs.create false
   9 | >>> RUN python3 -m poetry install
  10 |     RUN python3 -m pip install --force streamlit sentence_transformers # Temp fix, see pyproject.toml
  11 |     RUN python3 -m pip uninstall -y llama-cpp-python
--------------------
error: failed to solve: rpc error: code = Unknown desc = process "/bin/sh -c python3 -m poetry install" did not complete successfully: exit code: 1

Expected behavior

A docker image should be build from the command :

docker build .
hippalectryon-0 commented 1 year ago

Most likely fixed in #80

mlynar-czyk commented 1 year ago

I'm waiting for the merge. It did not work from your better-docker branch a1e3108. Thank you

[+] Building 256.7s (12/17)
 => [internal] load build definition from Dockerfile                                       0.1s 
 => => transferring dockerfile: 1.56kB                                                     0.0s 
 => [internal] load .dockerignore                                                          0.1s 
 => => transferring context: 65B                                                           0.0s 
 => [internal] load metadata for docker.io/library/python:3.11-slim                        1.7s 
 => [python-base 1/1] FROM docker.io/library/python:3.11-slim@sha256:551c9529e77896518ac5  6.3s 
 => => resolve docker.io/library/python:3.11-slim@sha256:551c9529e77896518ac5693d7e98ee5e  0.1s 
 => => sha256:551c9529e77896518ac5693d7e98ee5e12051d625de450ac2a68da1eae1 1.65kB / 1.65kB  0.0s 
 => => sha256:dcca7339f0426d2fdb33e8fbbe05cca4b39af30430602c8c894822cf81d 1.37kB / 1.37kB  0.0s 
 => => sha256:56dd444d312fcba97f3a1d1293c1bf446163c5a023ab18823cf1c5ee488 6.83kB / 6.83kB  0.0s 
 => => sha256:9e3ea8720c6de96cc9ad544dddc695a3ab73f5581c5d954e0504cc4f8 31.40MB / 31.40MB  1.1s 
 => => sha256:fe9f5cfcf49b03ec591210966a6e78b0cee3d61048a1b602e152a52941e 1.08MB / 1.08MB  0.3s 
 => => sha256:cbf438db4e3da6770b5df432eb8cdbbc34269a21299ac421b2f6053f8 11.94MB / 11.94MB  1.2s 
 => => sha256:eb097188185be91b170a078c50fb318cdb72ae32c00ac11e59cef3a15fe8d7d 243B / 243B  0.6s 
 => => sha256:a14e8556ab938fc13ee07335fe15696cc4aad4986c58dafbd72b26b9a65 3.37MB / 3.37MB  0.9s 
 => => extracting sha256:9e3ea8720c6de96cc9ad544dddc695a3ab73f5581c5d954e0504cc4f80fb5e5c  2.6s 
 => => extracting sha256:fe9f5cfcf49b03ec591210966a6e78b0cee3d61048a1b602e152a52941e9816d  0.2s 
 => => extracting sha256:cbf438db4e3da6770b5df432eb8cdbbc34269a21299ac421b2f6053f8c84323c  1.0s 
 => => extracting sha256:eb097188185be91b170a078c50fb318cdb72ae32c00ac11e59cef3a15fe8d7d8  0.0s 
 => => extracting sha256:a14e8556ab938fc13ee07335fe15696cc4aad4986c58dafbd72b26b9a650effe  0.5s 
 => [internal] load build context                                                          0.0s 
 => => transferring context: 762B                                                          0.0s 
 => [builder-base 1/9] RUN apt-get update && apt-get install -y build-essential git       48.4s 
 => [builder-base 2/9] RUN pip install "poetry==1.4.2"                                    25.5s 
 => [builder-base 3/9] WORKDIR /srv                                                        0.1s 
 => [builder-base 4/9] RUN git clone https://github.com/su77ungr/CASALIOY.git              2.4s 
 => [builder-base 5/9] WORKDIR CASALIOY                                                    0.1s 
 => [builder-base 6/9] RUN pip install --upgrade setuptools virtualenv                     7.2s 
 => ERROR [builder-base 7/9] RUN poetry install --with GUI,LLM --without dev --sync      164.9s 
------
 > [builder-base 7/9] RUN poetry install --with GUI,LLM --without dev --sync:
#11 1.444 Creating virtualenv casalioy in /srv/CASALIOY/.venv
#11 2.711 Installing dependencies from lock file
#11 7.474
#11 7.474 Package operations: 165 installs, 0 updates, 0 removals
#11 7.474 
#11 7.476   • Installing pycparser (2.21)
#11 7.476   • Installing six (1.16.0)
#11 8.013   • Installing attrs (23.1.0)
#11 8.013   • Installing cffi (1.15.1)
#11 8.016   • Installing idna (3.4)
#11 8.018   • Installing markupsafe (2.1.2)
#11 8.018   • Installing numpy (1.23.5)
#11 8.020   • Installing pyrsistent (0.19.3)
#11 8.027   • Installing python-dateutil (2.8.2)
#11 8.033   • Installing pytz (2023.3)
#11 8.057   • Installing sniffio (1.3.0)
#11 8.060   • Installing tzdata (2023.3)
#11 15.22   • Installing anyio (3.6.2)
#11 15.22   • Installing certifi (2023.5.7)
#11 15.22   • Installing charset-normalizer (3.1.0)
#11 15.23   • Installing commonmark (0.9.1)
#11 15.23   • Installing cryptography (40.0.2)
#11 15.23   • Installing decorator (5.1.1)
#11 15.23   • Installing entrypoints (0.4)
#11 15.23   • Installing h11 (0.14.0)
#11 15.24   • Installing jinja2 (3.1.2)
#11 15.24   • Installing jsonschema (4.17.3)
#11 15.25   • Installing mpmath (1.3.0)
#11 15.26   • Installing olefile (0.46)
#11 15.48 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10    
#11 15.53 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10    
#11 15.86   • Installing packaging (23.1)
#11 16.03   • Installing pandas (1.5.3)
#11 16.25   • Installing pygments (2.15.1)
#11 16.40   • Installing pytz-deprecation-shim (0.1.0.post0)
#11 16.67   • Installing soupsieve (2.4.1)
#11 16.68   • Installing toolz (0.12.0)
#11 16.74   • Installing urllib3 (1.26.15)
#11 16.76   • Installing zipp (3.15.0)
#11 23.63   • Installing altair (4.2.2)
#11 23.64   • Installing beautifulsoup4 (4.12.2)
#11 23.64   • Installing blinker (1.6.2)
#11 23.64   • Installing cachetools (5.3.0)
#11 23.64   • Installing click (8.1.3)
#11 23.64   • Installing colorclass (2.2.2)
#11 23.65   • Installing contourpy (1.0.7)
#11 23.65   • Installing cycler (0.11.0)
#11 23.65   • Installing easygui (0.98.3)
#11 23.66   • Installing filelock (3.12.0)
#11 23.66   • Installing fonttools (4.39.4)
#11 23.67   • Installing frozenlist (1.3.3)
#11 23.89 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10    
#11 24.02 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10    
#11 24.31   • Installing fsspec (2023.5.0)
#11 24.34   • Installing hpack (4.0.0)
#11 24.43   • Installing httpcore (0.16.3)
#11 24.46   • Installing hyperframe (6.0.1)
#11 24.62   • Installing importlib-metadata (6.6.0)
#11 24.73   • Installing kiwisolver (1.4.4)
#11 24.92   • Installing markdown (3.4.3)
#11 25.10   • Installing marshmallow (3.19.0)
#11 25.18   • Installing more-itertools (9.1.0)
#11 25.20   • Installing msoffcrypto-tool (5.0.1)
#11 25.30   • Installing multidict (6.0.4)
#11 25.59   • Installing mypy-extensions (1.0.0)
#11 25.62   • Installing networkx (3.1)
#11 25.96   • Installing pcodedmp (1.2.6)
#11 26.03   • Installing pillow (9.5.0)
#11 26.19   • Installing protobuf (4.23.0)
#11 26.22   • Installing pyarrow (12.0.0)
#11 26.39   • Installing pympler (1.0.1)
#11 26.39   • Installing pyparsing (2.4.7)
#11 26.42   • Installing pyyaml (6.0)
#11 26.61   • Installing requests (2.30.0)
#11 26.84   • Installing rfc3986 (1.5.0)
#11 27.21   • Installing rich (13.0.1)
#11 27.65   • Installing sympy (1.12)
#11 27.71   • Installing tenacity (8.2.2)
#11 28.26   • Installing toml (0.10.2)
#11 28.43   • Installing tqdm (4.65.0)
#11 28.52   • Installing typing-extensions (4.5.0)
#11 28.72   • Installing tzlocal (4.2)
#11 28.97   • Installing validators (0.20.0)
#11 29.07   • Installing watchdog (3.0.0)
#11 29.20   • Installing wrapt (1.14.1)
#11 44.29   • Installing aiosignal (1.3.1)
#11 44.29   • Installing async-timeout (4.0.2)
#11 44.29   • Installing backoff (2.2.1)
#11 44.29   • Installing deprecated (1.2.13)
#11 44.30   • Installing et-xmlfile (1.1.0)
#11 44.30   • Installing faker (18.9.0)
#11 44.30   • Installing favicon (0.7.0)
#11 44.31   • Installing greenlet (2.0.2)
#11 44.31   • Installing grpcio (1.54.2)
#11 44.31   • Installing h2 (4.1.0)
#11 44.31   • Installing htbuilder (0.6.1)
#11 44.32   • Installing httpx (0.23.3)
#11 44.53 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10    
#11 44.55 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10    
#11 45.09   • Installing huggingface-hub (0.14.1)
#11 45.12   • Installing joblib (1.2.0)
#11 45.13   • Installing lark-parser (0.12.0)
#11 45.14   • Installing lxml (4.9.2)
#11 45.18   • Installing marshmallow-enum (1.5.1)
#11 45.25   • Installing matplotlib (3.7.1)
#11 45.46   • Installing monotonic (1.6)
#11 46.11   • Installing oletools (0.60.1)
#11 46.12   • Installing pydantic (1.10.7)
#11 46.34   • Installing pymdown-extensions (10.0.1)
#11 47.55   • Installing regex (2023.5.5)
#11 47.94   • Installing requests-file (1.5.1)
#11 48.10   • Installing scipy (1.10.1)
#11 48.73   • Installing streamlit (1.22.0 0b7fb1c)
#11 48.87   • Installing threadpoolctl (3.1.0)
#11 49.51   • Installing tokenizers (0.13.3)
#11 49.88   • Installing torch (2.0.1)
#11 49.98   • Installing typer (0.7.0)
#11 51.02   • Installing typing-inspect (0.8.0)
#11 51.10   • Installing xlsxwriter (3.1.0)
#11 51.75   • Installing yarl (1.9.2)
#11 68.31
#11 68.31   IncompleteRead
#11 68.31
#11 68.31   IncompleteRead(2399 bytes read, 5794 more expected)
#11 68.31
#11 68.31   at /usr/local/lib/python3.11/http/client.py:633 in _safe_read
#11 68.46        629│         IncompleteRead exception can be used to detect the problem.       
#11 68.46        630│         """
#11 68.47        631│         data = self.fp.read(amt)
#11 68.47        632│         if len(data) < amt:
#11 68.47     →  633│             raise IncompleteRead(data, amt-len(data))
#11 68.47        634│         return data
#11 68.47        635│
#11 68.47        636│     def _safe_readinto(self, b):
#11 68.47        637│         """Same as _safe_read, but for reading into a buffer."""
#11 68.47
#11 68.47 The following error occurred when trying to handle this error:
#11 68.47
#11 68.47
#11 68.47   IncompleteRead
#11 68.47
#11 68.47   IncompleteRead(0 bytes read)
#11 68.47
#11 68.47   at /usr/local/lib/python3.11/http/client.py:598 in _read_chunked
#11 68.62        594│                     amt -= chunk_left
#11 68.62        595│                 self.chunk_left = 0
#11 68.62        596│             return b''.join(value)
#11 68.62        597│         except IncompleteRead as exc:
#11 68.62     →  598│             raise IncompleteRead(b''.join(value)) from exc
#11 68.62        599│
#11 68.62        600│     def _readinto_chunked(self, b):
#11 68.62        601│         assert self.chunked != _UNKNOWN
#11 68.62        602│         total_bytes = 0
#11 68.62
#11 68.63 The following error occurred when trying to handle this error:
#11 68.63
#11 68.64
#11 68.64   ProtocolError
#11 68.64
#11 68.64   ('Connection broken: IncompleteRead(0 bytes read)', IncompleteRead(0 bytes read))   
#11 68.64
#11 68.64   at /usr/local/lib/python3.11/site-packages/urllib3/response.py:461 in _error_catcher#11 68.75       457│                 raise ReadTimeoutError(self._pool, None, "Read timed out.")#11 68.75       458│
#11 68.75       459│             except (HTTPException, SocketError) as e:
#11 68.75       460│                 # This includes IncompleteRead.
#11 68.75     → 461│                 raise ProtocolError("Connection broken: %r" % e, e)        
#11 68.75       462│
#11 68.75       463│             # If no exception is thrown, we should avoid cleaning up       
#11 68.75       464│             # unnecessarily.
#11 68.75       465│             clean_exit = True
#11 68.75
------
Dockerfile:28
--------------------
  26 |     WORKDIR CASALIOY
  27 |     RUN pip install --upgrade setuptools virtualenv
  28 | >>> RUN poetry install --with GUI,LLM --without dev --sync
  29 |     RUN . .venv/bin/activate && pip install --force torch torchvision --index-url https://download.pytorch.org/whl/cpu  # CPU-only torch for sentence_transformers
  30 |     RUN . .venv/bin/activate && pip install --force streamlit # Temp fix, see pyproject.toml
--------------------
error: failed to solve: rpc error: code = Unknown desc = process "/bin/sh -c poetry install --with GUI,LLM --without dev --sync" did not complete successfully: exit code: 1
hippalectryon-0 commented 1 year ago

~After looking more into your error: it looks like you have a network error when installing yarl. This is most likely not related to casalioy itself, the dockerfile runs file on my two computers.~

~Nevertheless I can try to help. What's your docker version ?~

EDIT: I think I know the issue: if you're using the Dockerfile from the MR that's not yet merged, you also need to change the pulling url from

RUN git clone https://github.com/su77ungr/CASALIOY.git
WORKDIR CASALIOY

to

RUN git clone https://github.com/hippalectryon-0/CASALIOY.git
WORKDIR CASALIOY
RUN git checkout better-docker
mlynar-czyk commented 1 year ago

Docker version 23.0.5, build bc4487a

The su77ungr/casalioy:stable image worked fine.

I made the change, yarl still seems to be a bottleneck :

[+] Building 156.4s (13/18)
 => [internal] load .dockerignore                                                                   0.0s 
 => => transferring context: 65B                                                                    0.0s 
 => [internal] load build definition from Dockerfile                                                0.1s 
 => => transferring dockerfile: 1.60kB                                                              0.0s 
 => [internal] load metadata for docker.io/library/python:3.11-slim                                 0.6s 
 => [internal] load build context                                                                   0.0s 
 => => transferring context: 33B                                                                    0.0s 
 => CACHED [python-base 1/1] FROM docker.io/library/python:3.11-slim@sha256:551c9529e77896518ac569  0.0s 
 => CACHED [builder-base  1/10] RUN apt-get update && apt-get install -y build-essential git        0.0s 
 => CACHED [builder-base  2/10] RUN pip install "poetry==1.4.2"                                     0.0s 
 => CACHED [builder-base  3/10] WORKDIR /srv                                                        0.0s 
 => [builder-base  4/10] RUN git clone https://github.com/hippalectryon-0/CASALIOY.git              1.5s 
 => [builder-base  5/10] WORKDIR CASALIOY                                                           0.1s 
 => [builder-base  6/10] RUN git checkout better-docker                                             0.6s 
 => [builder-base  7/10] RUN pip install --upgrade setuptools virtualenv                            5.3s 
 => ERROR [builder-base  8/10] RUN poetry install --with GUI,LLM --without dev --sync             148.4s 
------
 > [builder-base  8/10] RUN poetry install --with GUI,LLM --without dev --sync:
#12 1.223 Creating virtualenv casalioy in /srv/CASALIOY/.venv
#12 2.369 Installing dependencies from lock file
#12 6.015
#12 6.015 Package operations: 169 installs, 0 updates, 0 removals
#12 6.017
#12 6.019   • Installing pycparser (2.21)
#12 6.020   • Installing six (1.16.0)
#12 6.495   • Installing attrs (23.1.0)
#12 6.495   • Installing cffi (1.15.1)
#12 6.498   • Installing idna (3.4)
#12 6.501   • Installing markupsafe (2.1.2)
#12 6.508   • Installing numpy (1.23.5)
#12 6.512   • Installing pyrsistent (0.19.3)
#12 6.516   • Installing python-dateutil (2.8.2)
#12 6.521   • Installing pytz (2023.3)
#12 6.528   • Installing smmap (5.0.0)
#12 6.534   • Installing sniffio (1.3.0)
#12 6.551   • Installing tzdata (2023.3)
#12 6.819 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 12.80   • Installing anyio (3.6.2)
#12 12.80   • Installing certifi (2023.5.7)
#12 12.80   • Installing charset-normalizer (3.1.0)
#12 12.80   • Installing commonmark (0.9.1)
#12 12.81   • Installing cryptography (40.0.2)
#12 12.81   • Installing decorator (5.1.1)
#12 12.81   • Installing entrypoints (0.4)
#12 12.82   • Installing gitdb (4.0.10)
#12 12.82   • Installing h11 (0.14.0)
#12 12.82   • Installing jinja2 (3.1.2)
#12 12.83   • Installing jsonschema (4.17.3)
#12 12.83   • Installing mpmath (1.3.0)
#12 13.08 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 13.09 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 13.37   • Installing olefile (0.46)
#12 13.46   • Installing packaging (23.1)
#12 13.85   • Installing pandas (1.5.3)
#12 13.98   • Installing pygments (2.15.1)
#12 14.23   • Installing pytz-deprecation-shim (0.1.0.post0)
#12 14.30   • Installing soupsieve (2.4.1)
#12 14.35   • Installing toolz (0.12.0)
#12 14.38   • Installing urllib3 (1.26.15)
#12 14.39   • Installing zipp (3.15.0)
#12 20.62   • Installing altair (4.2.2)
#12 20.62   • Installing beautifulsoup4 (4.12.2)
#12 20.62   • Installing blinker (1.6.2)
#12 20.63   • Installing cachetools (5.3.0)
#12 20.63   • Installing click (8.1.3)
#12 20.63   • Installing colorclass (2.2.2)
#12 20.63   • Installing contourpy (1.0.7)
#12 20.64   • Installing cycler (0.11.0)
#12 20.64   • Installing easygui (0.98.3)
#12 20.65   • Installing filelock (3.12.0)
#12 20.65   • Installing fonttools (4.39.4)
#12 20.65   • Installing frozenlist (1.3.3)
#12 20.86 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 20.98 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 21.23   • Installing fsspec (2023.5.0)
#12 21.31   • Installing gitpython (3.1.31)
#12 21.35   • Installing hpack (4.0.0)
#12 21.44   • Installing httpcore (0.16.3)
#12 21.48   • Installing hyperframe (6.0.1)
#12 21.77   • Installing importlib-metadata (6.6.0)
#12 21.81   • Installing kiwisolver (1.4.4)
#12 22.10   • Installing markdown (3.4.3)
#12 22.10   • Installing marshmallow (3.19.0)
#12 22.13   • Installing more-itertools (9.1.0)
#12 22.14   • Installing msoffcrypto-tool (5.0.1)
#12 22.46   • Installing multidict (6.0.4)
#12 22.65   • Installing mypy-extensions (1.0.0)
#12 22.86   • Installing networkx (3.1)
#12 22.89   • Installing pcodedmp (1.2.6)
#12 23.07   • Installing pillow (9.5.0)
#12 23.18   • Installing protobuf (4.23.0)
#12 23.26   • Installing pyarrow (12.0.0)
#12 23.34   • Installing pydeck (0.8.0)
#12 23.45   • Installing pympler (1.0.1)
#12 23.51   • Installing pyparsing (2.4.7)
#12 23.71   • Installing pyyaml (6.0)
#12 23.74   • Installing requests (2.30.0)
#12 24.21   • Installing rfc3986 (1.5.0)
#12 24.77   • Installing rich (13.0.1)
#12 25.04   • Installing sympy (1.12)
#12 25.14   • Installing tenacity (8.2.2)
#12 25.48   • Installing toml (0.10.2)
#12 25.57   • Installing tornado (6.3.2)
#12 25.99   • Installing tqdm (4.65.0)
#12 26.16   • Installing typing-extensions (4.5.0)
#12 26.19   • Installing tzlocal (4.2)
#12 26.77   • Installing validators (0.20.0)
#12 26.87   • Installing watchdog (3.0.0)
#12 27.41   • Installing wrapt (1.14.1)
#12 40.86   • Installing aiosignal (1.3.1)
#12 40.86   • Installing async-timeout (4.0.2)
#12 40.86   • Installing backoff (2.2.1)
#12 40.86   • Installing deprecated (1.2.13)
#12 40.86   • Installing et-xmlfile (1.1.0)
#12 40.86   • Installing favicon (0.7.0)
#12 40.87   • Installing greenlet (2.0.2)
#12 40.87   • Installing grpcio (1.54.2)
#12 40.87   • Installing h2 (4.1.0)
#12 40.87   • Installing htbuilder (0.6.1)
#12 40.88   • Installing httpx (0.23.3)
#12 41.10 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 41.13 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 41.64   • Installing huggingface-hub (0.14.1)
#12 41.66   • Installing joblib (1.2.0)
#12 41.69   • Installing lark-parser (0.12.0)
#12 41.72   • Installing lxml (4.9.2)
#12 41.72   • Installing marshmallow-enum (1.5.1)
#12 41.81   • Installing matplotlib (3.7.1)
#12 42.04   • Installing monotonic (1.6)
#12 42.56   • Installing oletools (0.60.1)
#12 42.69   • Installing pydantic (1.10.7)
#12 42.91   • Installing pymdown-extensions (10.0.1)
#12 43.92   • Installing regex (2023.5.5)
#12 44.33   • Installing requests-file (1.5.1)
#12 44.60   • Installing scipy (1.10.1)
#12 45.01   • Installing streamlit (1.22.0 0b7fb1c)
#12 45.03   • Installing threadpoolctl (3.1.0)
#12 45.66   • Installing tokenizers (0.13.3)
#12 45.98   • Installing torch (2.0.1)
#12 46.09   • Installing typer (0.7.0)
#12 47.04   • Installing typing-inspect (0.8.0)
#12 47.34   • Installing xlsxwriter (3.1.0)
#12 47.65   • Installing yarl (1.9.2)
#12 139.8
#12 139.8   RuntimeError
#12 139.8
#12 139.8   Hash for torch (2.0.1) from archive torch-2.0.1-cp311-cp311-manylinux1_x86_64.whl not found in known hashes (was: sha256:b3db0394cda08ad33679d3a9ec5dee2843ab70269b264795808ee505eb2696fa)
#12 139.8
#12 139.8   at /usr/local/lib/python3.11/site-packages/poetry/installation/executor.py:769 in _validate_archive_hash
#12 139.9       765│         archive_hash: str = "sha256:" + get_file_hash(archive)
#12 139.9       766│         known_hashes = {f["hash"] for f in package.files if f["file"] == archive.name}
#12 139.9       767│
#12 139.9       768│         if archive_hash not in known_hashes:
#12 139.9     → 769│             raise RuntimeError(
#12 139.9       770│                 f"Hash for {package} from archive {archive.name} not found in"      
#12 139.9       771│                 f" known hashes (was: {archive_hash})"
#12 139.9       772│             )
#12 139.9       773│
#12 139.9
------
Dockerfile:29
--------------------
  27 |     RUN git checkout better-docker
  28 |     RUN pip install --upgrade setuptools virtualenv
  29 | >>> RUN poetry install --with GUI,LLM --without dev --sync
  30 |     RUN . .venv/bin/activate && pip install --force torch torchvision --index-url https://download.pytorch.org/whl/cpu  # CPU-only torch for sentence_transformers
  31 |     RUN . .venv/bin/activate && pip install --force streamlit # Temp fix, see pyproject.toml      
--------------------
error: failed to solve: rpc error: code = Unknown desc = process "/bin/sh -c poetry install --with GUI,LLM --without dev --sync" did not complete successfully: exit code: 1

I'll try tomorrow again.

hippalectryon-0 commented 1 year ago

On my computers the yarl install always takes a very long time (tens of seconds), but eventually succeeds. This really sounds like a network issue on the yarn install.

Edit: actually, it looks like you get a new error with the changes in the dockerfile ! Looks like an issue with the poetry cache.

hippalectryon-0 commented 1 year ago

@mlynar-czyk Can you rerun the latest version with --no-cache ?

mlynar-czyk commented 1 year ago

Nope. The docker build --no-cache . option didn't affect the issue. I was tricked by the time elapsed on the yarl install just before the second error.

[+] Building 142.7s (13/18)
 => [internal] load build definition from Dockerfile                                                                                                                                                                        0.0s 
 => => transferring dockerfile: 1.60kB                                                                                                                                                                                      0.0s 
 => [internal] load .dockerignore                                                                                                                                                                                           0.1s 
 => => transferring context: 65B                                                                                                                                                                                            0.0s 
 => [internal] load metadata for docker.io/library/python:3.11-slim                                                                                                                                                         0.9s 
 => [internal] load build context                                                                                                                                                                                           0.0s 
 => => transferring context: 33B                                                                                                                                                                                            0.0s 
 => CACHED [python-base 1/1] FROM docker.io/library/python:3.11-slim@sha256:551c9529e77896518ac5693d7e98ee5e12051d625de450ac2a68da1eae15ec87                                                                                0.0s 
 => [builder-base  1/10] RUN apt-get update && apt-get install -y build-essential git                                                                                                                                      41.1s 
 => [builder-base  2/10] RUN pip install "poetry==1.4.2"                                                                                                                                                                   19.2s 
 => [builder-base  3/10] WORKDIR /srv                                                                                                                                                                                       0.1s 
 => [builder-base  4/10] RUN git clone https://github.com/hippalectryon-0/CASALIOY.git                                                                                                                                      1.7s 
 => [builder-base  5/10] WORKDIR CASALIOY                                                                                                                                                                                   0.1s 
 => [builder-base  6/10] RUN git checkout better-docker                                                                                                                                                                     0.5s 
 => [builder-base  7/10] RUN pip install --upgrade setuptools virtualenv                                                                                                                                                    5.4s 
 => ERROR [builder-base  8/10] RUN poetry install --with GUI,LLM --without dev --sync                                                                                                                                      73.6s 
------
 > [builder-base  8/10] RUN poetry install --with GUI,LLM --without dev --sync:
#12 1.190 Creating virtualenv casalioy in /srv/CASALIOY/.venv
#12 2.353 Installing dependencies from lock file
#12 5.955
#12 5.955 Package operations: 169 installs, 0 updates, 0 removals
#12 5.956
#12 5.958   • Installing pycparser (2.21)
#12 5.959   • Installing six (1.16.0)
#12 6.417   • Installing attrs (23.1.0)
#12 6.418   • Installing cffi (1.15.1)
#12 6.418   • Installing idna (3.4)
#12 6.422   • Installing markupsafe (2.1.2)
#12 6.426   • Installing numpy (1.23.5)
#12 6.430   • Installing pyrsistent (0.19.3)
#12 6.434   • Installing python-dateutil (2.8.2)
#12 6.444   • Installing pytz (2023.3)
#12 6.454   • Installing smmap (5.0.0)
#12 6.459   • Installing sniffio (1.3.0)
#12 6.470   • Installing tzdata (2023.3)
#12 6.793 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 12.52   • Installing anyio (3.6.2)
#12 12.52   • Installing certifi (2023.5.7)
#12 12.52   • Installing charset-normalizer (3.1.0)
#12 12.53   • Installing commonmark (0.9.1)
#12 12.53   • Installing cryptography (40.0.2)
#12 12.54   • Installing decorator (5.1.1)
#12 12.54   • Installing entrypoints (0.4)
#12 12.54   • Installing gitdb (4.0.10)
#12 12.55   • Installing h11 (0.14.0)
#12 12.56   • Installing jinja2 (3.1.2)
#12 12.57   • Installing jsonschema (4.17.3)
#12 12.57   • Installing mpmath (1.3.0)
#12 12.80 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 12.81 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 13.11   • Installing olefile (0.46)
#12 13.15   • Installing packaging (23.1)
#12 13.48   • Installing pandas (1.5.3)
#12 13.72   • Installing pygments (2.15.1)
#12 13.76   • Installing pytz-deprecation-shim (0.1.0.post0)
#12 13.84   • Installing soupsieve (2.4.1)
#12 14.00   • Installing toolz (0.12.0)
#12 14.01   • Installing urllib3 (1.26.15)
#12 14.07   • Installing zipp (3.15.0)
#12 20.39   • Installing altair (4.2.2)
#12 20.39   • Installing beautifulsoup4 (4.12.2)
#12 20.39   • Installing blinker (1.6.2)
#12 20.39   • Installing cachetools (5.3.0)
#12 20.39   • Installing click (8.1.3)
#12 20.39   • Installing colorclass (2.2.2)
#12 20.40   • Installing contourpy (1.0.7)
#12 20.40   • Installing cycler (0.11.0)
#12 20.40   • Installing easygui (0.98.3)
#12 20.41   • Installing filelock (3.12.0)
#12 20.41   • Installing fonttools (4.39.4)
#12 20.41   • Installing frozenlist (1.3.3)
#12 20.64 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 20.64 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 21.01   • Installing fsspec (2023.5.0)
#12 21.06   • Installing gitpython (3.1.31)
#12 21.16   • Installing hpack (4.0.0)
#12 21.28   • Installing httpcore (0.16.3)
#12 21.35   • Installing hyperframe (6.0.1)
#12 21.50   • Installing importlib-metadata (6.6.0)
#12 21.57   • Installing kiwisolver (1.4.4)
#12 21.79   • Installing markdown (3.4.3)
#12 21.98   • Installing marshmallow (3.19.0)
#12 22.10   • Installing more-itertools (9.1.0)
#12 22.15   • Installing msoffcrypto-tool (5.0.1)
#12 22.36   • Installing multidict (6.0.4)
#12 22.43   • Installing mypy-extensions (1.0.0)
#12 22.85   • Installing networkx (3.1)
#12 22.94   • Installing pcodedmp (1.2.6)
#12 22.98   • Installing pillow (9.5.0)
#12 23.00   • Installing protobuf (4.23.0)
#12 23.03   • Installing pyarrow (12.0.0)
#12 23.18   • Installing pydeck (0.8.0)
#12 23.26   • Installing pympler (1.0.1)
#12 23.38   • Installing pyparsing (2.4.7)
#12 23.43   • Installing pyyaml (6.0)
#12 23.75   • Installing requests (2.30.0)
#12 24.11   • Installing rfc3986 (1.5.0)
#12 24.72   • Installing rich (13.0.1)
#12 24.91   • Installing sympy (1.12)
#12 24.98   • Installing tenacity (8.2.2)
#12 25.13   • Installing toml (0.10.2)
#12 25.41   • Installing tornado (6.3.2)
#12 25.79   • Installing tqdm (4.65.0)
#12 25.90   • Installing typing-extensions (4.5.0)
#12 25.96   • Installing tzlocal (4.2)
#12 26.50   • Installing validators (0.20.0)
#12 26.68   • Installing watchdog (3.0.0)
#12 27.22   • Installing wrapt (1.14.1)
#12 40.97   • Installing aiosignal (1.3.1)
#12 40.97   • Installing async-timeout (4.0.2)
#12 40.97   • Installing backoff (2.2.1)
#12 40.97   • Installing deprecated (1.2.13)
#12 40.98   • Installing et-xmlfile (1.1.0)
#12 40.98   • Installing faker (18.9.0)
#12 40.98   • Installing favicon (0.7.0)
#12 40.98   • Installing greenlet (2.0.2)
#12 40.99   • Installing grpcio (1.54.2)
#12 40.99   • Installing h2 (4.1.0)
#12 40.99   • Installing htbuilder (0.6.1)
#12 41.00   • Installing httpx (0.23.3)
#12 41.23 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 41.24 Connection pool is full, discarding connection: pypi.org. Connection pool size: 10
#12 41.75   • Installing huggingface-hub (0.14.1)
#12 41.77   • Installing joblib (1.2.0)
#12 41.78   • Installing lark-parser (0.12.0)
#12 41.80   • Installing lxml (4.9.2)
#12 41.85   • Installing marshmallow-enum (1.5.1)
#12 42.00   • Installing matplotlib (3.7.1)
#12 42.19   • Installing monotonic (1.6)
#12 42.53   • Installing oletools (0.60.1)
#12 42.71   • Installing pydantic (1.10.7)
#12 43.09   • Installing pymdown-extensions (10.0.1)
#12 43.83   • Installing regex (2023.5.5)
#12 44.48   • Installing requests-file (1.5.1)
#12 44.76   • Installing scipy (1.10.1)
#12 45.16   • Installing streamlit (1.22.0 0b7fb1c)
#12 45.31   • Installing threadpoolctl (3.1.0)
#12 45.89   • Installing tokenizers (0.13.3)
#12 46.14   • Installing torch (2.0.1)
#12 46.14   • Installing typer (0.7.0)
#12 47.06   • Installing typing-inspect (0.8.0)
#12 47.27   • Installing xlsxwriter (3.1.0)
#12 47.89   • Installing yarl (1.9.2)
#12 56.45
#12 56.45   ValueError
#12 56.45
#12 56.45   invalid literal for int() with base 16: b''
#12 56.45
#12 56.45   at /usr/local/lib/python3.11/http/client.py:533 in _read_next_chunk_size
#12 56.58        529│         i = line.find(b";")
#12 56.58        530│         if i >= 0:
#12 56.59        531│             line = line[:i] # strip chunk-extensions
#12 56.59        532│         try:
#12 56.59     →  533│             return int(line, 16)
#12 56.59        534│         except ValueError:
#12 56.59        535│             # close the connection as protocol synchronisation is
#12 56.59        536│             # probably lost
#12 56.59        537│             self._close_conn()
#12 56.59
#12 56.59 The following error occurred when trying to handle this error:
#12 56.59
#12 56.60
#12 56.60   IncompleteRead
#12 56.60
#12 56.60   IncompleteRead(0 bytes read)
#12 56.60
#12 56.60   at /usr/local/lib/python3.11/http/client.py:568 in _get_chunk_left
#12 56.75        564│                 self._safe_read(2)  # toss the CRLF at the end of the chunk
#12 56.75        565│             try:
#12 56.75        566│                 chunk_left = self._read_next_chunk_size()
#12 56.75        567│             except ValueError:
#12 56.75     →  568│                 raise IncompleteRead(b'')
#12 56.75        569│             if chunk_left == 0:
#12 56.76        570│                 # last chunk: 1*("0") [ chunk-extension ] CRLF
#12 56.76        571│                 self._read_and_discard_trailer()
#12 56.76        572│                 # we read everything; close the "file"
#12 56.76
#12 56.76 The following error occurred when trying to handle this error:
#12 56.76
#12 56.76
#12 56.76   IncompleteRead
#12 56.76
#12 56.76   IncompleteRead(3828 bytes read)
#12 56.76
#12 56.76   at /usr/local/lib/python3.11/http/client.py:598 in _read_chunked
#12 56.90        594│                     amt -= chunk_left
#12 56.90        595│                 self.chunk_left = 0
#12 56.90        596│             return b''.join(value)
#12 56.90        597│         except IncompleteRead as exc:
#12 56.91     →  598│             raise IncompleteRead(b''.join(value)) from exc
#12 56.91        599│
#12 56.91        600│     def _readinto_chunked(self, b):
#12 56.91        601│         assert self.chunked != _UNKNOWN
#12 56.91        602│         total_bytes = 0
#12 56.91
#12 56.91 The following error occurred when trying to handle this error:
#12 56.91
#12 56.91
#12 56.91   ProtocolError
#12 56.91
#12 56.91   ('Connection broken: IncompleteRead(3828 bytes read)', IncompleteRead(3828 bytes read))
#12 56.92
#12 56.92   at /usr/local/lib/python3.11/site-packages/urllib3/response.py:461 in _error_catcher
#12 56.99       457│                 raise ReadTimeoutError(self._pool, None, "Read timed out.")
#12 56.99       458│
#12 57.00       459│             except (HTTPException, SocketError) as e:
#12 57.00       460│                 # This includes IncompleteRead.
#12 57.00     → 461│                 raise ProtocolError("Connection broken: %r" % e, e)
#12 57.00       462│
#12 57.00       463│             # If no exception is thrown, we should avoid cleaning up
#12 57.00       464│             # unnecessarily.
#12 57.00       465│             clean_exit = True
#12 57.00
#12 69.75
#12 69.75   RuntimeError
#12 69.75
#12 69.75   Hash for torch (2.0.1) from archive torch-2.0.1-cp311-cp311-manylinux1_x86_64.whl not found in known hashes (was: sha256:062b765540ea9c6863b9f5174bfce7974b952aff9b93d13ad00f741c8975a479)
#12 69.75
#12 69.75   at /usr/local/lib/python3.11/site-packages/poetry/installation/executor.py:769 in _validate_archive_hash
#12 69.84       765│         archive_hash: str = "sha256:" + get_file_hash(archive)
#12 69.84       766│         known_hashes = {f["hash"] for f in package.files if f["file"] == archive.name}
#12 69.84       767│
#12 69.84       768│         if archive_hash not in known_hashes:
#12 69.84     → 769│             raise RuntimeError(
#12 69.84       770│                 f"Hash for {package} from archive {archive.name} not found in"
#12 69.84       771│                 f" known hashes (was: {archive_hash})"
#12 69.84       772│             )
#12 69.84       773│
#12 69.84
------
Dockerfile:29
--------------------
  27 |     RUN git checkout better-docker
  28 |     RUN pip install --upgrade setuptools virtualenv
  29 | >>> RUN poetry install --with GUI,LLM --without dev --sync
  30 |     RUN . .venv/bin/activate && pip install --force torch torchvision --index-url https://download.pytorch.org/whl/cpu  # CPU-only torch for sentence_transformers
  31 |     RUN . .venv/bin/activate && pip install --force streamlit # Temp fix, see pyproject.toml
--------------------
error: failed to solve: rpc error: code = Unknown desc = process "/bin/sh -c poetry install --with GUI,LLM --without dev --sync" did not complete successfully: exit code: 1
su77ungr commented 1 year ago

Sorry for the inconvenience.

Edit: windows 10 testing now

I'm spinning up some VMs in azure now.

mlynar-czyk commented 1 year ago

Don't be sorry. I'm on a Win10 22H2 with wsl. Docker version 23.0.5, build bc4487a The su77ungr/casalioy:stable image worked fine.

Hope to still be able to use it on a Windows workstation. I would like to commit a full working container to export it on a offline computer.

(I did a system reboot too, just in case...)

su77ungr commented 1 year ago

Sure, we are planning to offer a package that works plug-in-play with every python ready machine too. Let's fix this first, run tests and I'll hit you up as soon as possible

@hippalectryon-0 sure python:3.11-slim is compatible?

see #84 on bottom

hippalectryon-0 commented 1 year ago

sure python:3.11-slim is compatible?

slim is just a version without additional packages. If you need to add anything, just apt install it in the dockerfile. Moreover, the dockerfile produces a perfectly working image on my end, so clearly it can work.

I'm working on another feature rn, but I'll try to pull your latest image to see what happens.