elyra-ai / elyra

Elyra extends JupyterLab with an AI centric approach.
https://elyra.readthedocs.io/en/stable/
Apache License 2.0
1.86k stars 343 forks source link

Local development setup not working #3203

Closed savemuri closed 11 months ago

savemuri commented 11 months ago

Describe the issue Tried to build a local docker image and it throws up the following error image

To Reproduce Steps to reproduce the behavior:

  1. Clone repo and cd to the directory
  2. Run make build-server to create the dist/
  3. Run make kf-notebook-image NOTE I am using m2 mac and for docker build and run commands, I tried passing both --platform linux/arm64 and --platform linux/amd64.

Screenshots or log output If applicable, add screenshots or log output to help explain your problem.

Log Output
#14 [6/9] RUN jupyter elyra --generate-config
#14 0.895 Traceback (most recent call last):
#14 0.895   File "/opt/conda/bin/jupyter-elyra", line 5, in 
#14 0.895     from elyra.elyra_app import launch_instance
#14 0.895   File "/opt/conda/lib/python3.8/site-packages/elyra/__init__.py", line 16, in 
#14 0.895     from elyra.elyra_app import ElyraApp
#14 0.895   File "/opt/conda/lib/python3.8/site-packages/elyra/elyra_app.py", line 35, in 
#14 0.895     from elyra.pipeline.handlers import ComponentCacheCatalogHandler
#14 0.895   File "/opt/conda/lib/python3.8/site-packages/elyra/pipeline/handlers.py", line 34, in 
#14 0.895     from elyra.pipeline.parser import PipelineParser
#14 0.895   File "/opt/conda/lib/python3.8/site-packages/elyra/pipeline/parser.py", line 24, in 
#14 0.895     from elyra.pipeline.pipeline_definition import Node
#14 0.895   File "/opt/conda/lib/python3.8/site-packages/elyra/pipeline/pipeline_definition.py", line 36, in 
#14 0.895     from elyra.pipeline.processor import PipelineProcessorManager
#14 0.895   File "/opt/conda/lib/python3.8/site-packages/elyra/pipeline/processor.py", line 31, in 
#14 0.895     from minio.error import S3Error
#14 0.895   File "/opt/conda/lib/python3.8/site-packages/minio/__init__.py", line 41, in 
#14 0.895     from .api import Minio
#14 0.895   File "/opt/conda/lib/python3.8/site-packages/minio/api.py", line 44, in 
#14 0.895     from urllib3.response import BaseHTTPResponse
#14 0.895 ImportError: cannot import name 'BaseHTTPResponse' from 'urllib3.response' (/opt/conda/lib/python3.8/site-packages/urllib3/response.py)
#14 ERROR: process "/bin/bash -c jupyter elyra --generate-config" did not complete successfully: exit code: 1
------
 > [6/9] RUN jupyter elyra --generate-config:
0.895     from elyra.pipeline.pipeline_definition import Node
0.895   File "/opt/conda/lib/python3.8/site-packages/elyra/pipeline/pipeline_definition.py", line 36, in 
0.895     from elyra.pipeline.processor import PipelineProcessorManager
0.895   File "/opt/conda/lib/python3.8/site-packages/elyra/pipeline/processor.py", line 31, in 
0.895     from minio.error import S3Error
0.895   File "/opt/conda/lib/python3.8/site-packages/minio/__init__.py", line 41, in 
0.895     from .api import Minio
0.895   File "/opt/conda/lib/python3.8/site-packages/minio/api.py", line 44, in 
0.895     from urllib3.response import BaseHTTPResponse
0.895 ImportError: cannot import name 'BaseHTTPResponse' from 'urllib3.response' (/opt/conda/lib/python3.8/site-packages/urllib3/response.py)
------
Dockerfile:43
--------------------
  41 |     
  42 |     # Create and customize Elyra config file to enable only KFP runtime
  43 | >>> RUN jupyter elyra --generate-config
  44 |     RUN sed -i -e "s/# c.PipelineProcessorRegistry.runtimes = \[\]/c.PipelineProcessorRegistry.runtimes = \['kfp'\]/g" $(jupyter --config-dir)/jupyter_elyra_config.py    
  45 |     
--------------------
ERROR: failed to solve: process "/bin/bash -c jupyter elyra --generate-config" did not complete successfully: exit code: 1
make: *** [kf-notebook-image] Error 1

Expected behavior Expected image to build correctly and be able to start a local environment.

Deployment information Describe what you've deployed and how: N/A.

savemuri commented 11 months ago

Update: Issue was with minio. Using minio>=7.0.0,<=7.2.0 works.

kevin-bates commented 11 months ago

This issue is not resolved. I think it might be best to filter out version 7.2.1 instead per these comments: https://github.com/minio/minio-py/issues/1382#issuecomment-1871334492

kevin-bates commented 11 months ago

@savemuri - would you like to contribute a fix that adds !=7.2.1 to the minio dependencies, similar to what is done for kfp?

savemuri commented 11 months ago

@kevin-bates - Sure, will create a PR today.

savemuri commented 11 months ago

@kevin-bates - Excluded version in - https://github.com/elyra-ai/elyra/pull/3204

kevin-bates commented 11 months ago

Thank you @savemuri!