zenml icon indicating copy to clipboard operation
zenml copied to clipboard

[BUG]: ZenML could not find .docker file

Open dnth opened this issue 3 years ago • 0 comments

Contact Details [Optional]

No response

System Information

ZenML version: 0.11.0
Install path: /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml
Python version: 3.8.13
Platform information: {'os': 'linux', 'linux_distro': 'ubuntu', 'linux_distro_like': 'debian', 'linux_distro_version': '20.04'}
Environment: native
Integrations: ['aws', 'lightgbm', 'mlflow', 'plotly', 'pytorch', 's3', 'scipy', 'sklearn', 'wandb', 'xgboost']

What happened?

I ran a pipeline and got an error that says

RuntimeError: Docker error: no basic auth credentials.

To get around this error I have to manually export the .docker file with

export DOCKER_CONFIG=/home/dnth/snap/docker/1779/.docker/

I installed Docker on my Ubuntu machine using Snap package manager.

Reproduction steps

No response

Relevant log output

╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
│ /home/dnth/Desktop/zenfiles/image-segmentation/run_image_seg_pipeline.py:25 in <module>          │
│                                                                                                  │
│   22                                                                                             │
│   23                                                                                             │
│   24 if __name__ == "__main__":                                                                  │
│ ❱ 25 │   run_img_seg_pipe()                                                                      │
│   26                                                                                             │
│                                                                                                  │
│ /home/dnth/Desktop/zenfiles/image-segmentation/run_image_seg_pipeline.py:21 in run_img_seg_pipe  │
│                                                                                                  │
│   18 │   │   initiate_model_and_optimizer().with_return_materializers(ImageCustomerMaterializ    │
│   19 │   │   train_model(),                                                                      │
│   20 │   )                                                                                       │
│ ❱ 21 │   image_seg_pipe.run()                                                                    │
│   22                                                                                             │
│   23                                                                                             │
│   24 if __name__ == "__main__":                                                                  │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/pipelines/base_pipeline.py: │
│ 500 in run                                                                                       │
│                                                                                                  │
│   497 │   │   self._reset_step_flags()                                                           │
│   498 │   │   self.validate_stack(stack)                                                         │
│   499 │   │                                                                                      │
│ ❱ 500 │   │   return stack.deploy_pipeline(                                                      │
│   501 │   │   │   self, runtime_configuration=runtime_configuration                              │
│   502 │   │   )                                                                                  │
│   503                                                                                            │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/stack/stack.py:615 in       │
│ deploy_pipeline                                                                                  │
│                                                                                                  │
│   612 │   │   │   pipeline=pipeline, runtime_configuration=runtime_configuration                 │
│   613 │   │   )                                                                                  │
│   614 │   │                                                                                      │
│ ❱ 615 │   │   return_value = self.orchestrator.run(                                              │
│   616 │   │   │   pipeline, stack=self, runtime_configuration=runtime_configuration              │
│   617 │   │   )                                                                                  │
│   618                                                                                            │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/orchestrators/base_orchestr │
│ ator.py:262 in run                                                                               │
│                                                                                                  │
│   259 │   │   │   pipeline=pipeline, pb2_pipeline=pb2_pipeline                                   │
│   260 │   │   )                                                                                  │
│   261 │   │                                                                                      │
│ ❱ 262 │   │   result = self.prepare_or_run_pipeline(                                             │
│   263 │   │   │   sorted_steps=sorted_steps,                                                     │
│   264 │   │   │   pipeline=pipeline,                                                             │
│   265 │   │   │   pb2_pipeline=pb2_pipeline,                                                     │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/orchestrators/local/local_o │
│ rchestrator.py:68 in prepare_or_run_pipeline                                                     │
│                                                                                                  │
│   65 │   │                                                                                       │
│   66 │   │   # Run each step                                                                     │
│   67 │   │   for step in sorted_steps:                                                           │
│ ❱ 68 │   │   │   self.run_step(                                                                  │
│   69 │   │   │   │   step=step,                                                                  │
│   70 │   │   │   │   run_name=runtime_configuration.run_name,                                    │
│   71 │   │   │   │   pb2_pipeline=pb2_pipeline,                                                  │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/orchestrators/base_orchestr │
│ ator.py:366 in run_step                                                                          │
│                                                                                                  │
│   363 │   │   # This is where the step actually gets executed using the                          │
│   364 │   │   # component_launcher                                                               │
│   365 │   │   repo.active_stack.prepare_step_run()                                               │
│ ❱ 366 │   │   execution_info = self._execute_step(component_launcher)                            │
│   367 │   │   repo.active_stack.cleanup_step_run()                                               │
│   368 │   │                                                                                      │
│   369 │   │   return execution_info                                                              │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/orchestrators/base_orchestr │
│ ator.py:390 in _execute_step                                                                     │
│                                                                                                  │
│   387 │   │   start_time = time.time()                                                           │
│   388 │   │   logger.info(f"Step `{pipeline_step_name}` has started.")                           │
│   389 │   │   try:                                                                               │
│ ❱ 390 │   │   │   execution_info = tfx_launcher.launch()                                         │
│   391 │   │   │   if execution_info and get_cache_status(execution_info):                        │
│   392 │   │   │   │   logger.info(f"Using cached version of `{pipeline_step_name}`.")            │
│   393 │   │   except RuntimeError as e:                                                          │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/tfx/orchestration/portable/launch │
│ er.py:549 in launch                                                                              │
│                                                                                                  │
│   546 │   │     self._executor_operator.with_execution_watcher(                                  │
│   547 │   │   │     executor_watcher.address)                                                    │
│   548 │   │     executor_watcher.start()                                                         │
│ ❱ 549 │   │   executor_output = self._run_executor(execution_info)                               │
│   550 │     except Exception as e:  # pylint: disable=broad-except                               │
│   551 │   │   execution_output = (                                                               │
│   552 │   │   │   e.executor_output if isinstance(e, _ExecutionFailedError) else None)           │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/tfx/orchestration/portable/launch │
│ er.py:424 in _run_executor                                                                       │
│                                                                                                  │
│   421 │                                                                                          │
│   422 │   outputs_utils.make_output_dirs(execution_info.output_dict)                             │
│   423 │   try:                                                                                   │
│ ❱ 424 │     executor_output = self._executor_operator.run_executor(execution_info)               │
│   425 │     code = executor_output.execution_result.code                                         │
│   426 │     if code != 0:                                                                        │
│   427 │   │   result_message = executor_output.execution_result.result_message                   │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/step_operators/step_executo │
│ r_operator.py:280 in run_executor                                                                │
│                                                                                                  │
│   277 │   │   │   requirements,                                                                  │
│   278 │   │   │   entrypoint_command,                                                            │
│   279 │   │   )                                                                                  │
│ ❱ 280 │   │   step_operator.launch(                                                              │
│   281 │   │   │   pipeline_name=execution_info.pipeline_info.id,                                 │
│   282 │   │   │   run_name=execution_info.pipeline_run_id,                                       │
│   283 │   │   │   requirements=requirements,                                                     │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/integrations/aws/step_opera │
│ tors/sagemaker_step_operator.py:121 in launch                                                    │
│                                                                                                  │
│   118 │   │   │   requirements: List of pip requirements that must be installed                  │
│   119 │   │   │   │   inside the step operator environment.                                      │
│   120 │   │   """                                                                                │
│ ❱ 121 │   │   image_name = self._build_docker_image(                                             │
│   122 │   │   │   pipeline_name=pipeline_name,                                                   │
│   123 │   │   │   requirements=requirements,                                                     │
│   124 │   │   │   entrypoint_command=entrypoint_command,                                         │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/integrations/aws/step_opera │
│ tors/sagemaker_step_operator.py:100 in _build_docker_image                                       │
│                                                                                                  │
│    97 │   │   │   requirements=set(requirements),                                                │
│    98 │   │   │   base_image=self.base_image,                                                    │
│    99 │   │   )                                                                                  │
│ ❱ 100 │   │   container_registry.push_image(image_name)                                          │
│   101 │   │   return docker_utils.get_image_digest(image_name) or image_name                     │
│   102 │                                                                                          │
│   103 │   def launch(                                                                            │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/container_registries/base_c │
│ ontainer_registry.py:111 in push_image                                                           │
│                                                                                                  │
│   108 │   │   │   )                                                                              │
│   109 │   │                                                                                      │
│   110 │   │   self.prepare_image_push(image_name)                                                │
│ ❱ 111 │   │   docker_utils.push_docker_image(image_name)                                         │
│   112                                                                                            │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/utils/docker_utils.py:317   │
│ in push_docker_image                                                                             │
│                                                                                                  │
│   314 │   logger.info("Pushing docker image '%s'.", image_name)                                  │
│   315 │   docker_client = DockerClient.from_env()                                                │
│   316 │   output_stream = docker_client.images.push(image_name, stream=True)                     │
│ ❱ 317 │   _process_stream(output_stream)                                                         │
│   318 │   logger.info("Finished pushing docker image.")                                          │
│   319                                                                                            │
│   320                                                                                            │
│                                                                                                  │
│ /home/dnth/anaconda3/envs/zenfiles/lib/python3.8/site-packages/zenml/utils/docker_utils.py:382   │
│ in _process_stream                                                                               │
│                                                                                                  │
│   379 │   │   │   try:                                                                           │
│   380 │   │   │   │   line_json = json.loads(line)                                               │
│   381 │   │   │   │   if "error" in line_json:                                                   │
│ ❱ 382 │   │   │   │   │   raise RuntimeError(f"Docker error: {line_json['error']}.")             │
│   383 │   │   │   │   elif "stream" in line_json:                                                │
│   384 │   │   │   │   │   logger.info(line_json["stream"].strip())                               │
│   385 │   │   │   │   else:       

Code of Conduct

  • [X] I agree to follow this project's Code of Conduct

dnth avatar Aug 15 '22 13:08 dnth