bentoml / bentoctl

Fast model deployment on any cloud 🚀

Home Page:https://bentoml.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

build fails with no such file or directory

hade94 opened this issue · comments

Hi,

when building a dockerized image of a bento an error accurred.
To Reproduce

Steps to reproduce the issue:
bentoctl build -b summarization:latest

Expected behavior
Builds the docker image

pip install bentoctl==0.3.4 fixes this issue temporally

Screenshots/Logs

In debug mode. Intermediate bento saved to /tmp/bentoctl-temp-3bbhxx8b
Traceback (most recent call last):
  File "/home/loginuser/anaconda3/envs/bentoml/bin/bentoctl", line 8, in <module>
    sys.exit(bentoctl())
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/click/core.py", line 1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/bentoctl/cli/utils.py", line 92, in wrapper
    return_value = func(*args, **kwargs)
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/bentoctl/cli/utils.py", line 57, in wrapper
    return func(*args, **kwargs)
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/bentoctl/cli/utils.py", line 26, in wrapper
    return func(*args, **kwargs)
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/bentoctl/cli/__init__.py", line 316, in build
    generate_deployable_container(
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/bentoctl/docker_utils.py", line 120, in generate_deployable_container
    backend.build(**buildx_args)
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/site-packages/bentoml/_internal/container/base.py", line 186, in build
    return subprocess.check_output(commands, cwd=context_path, env=env)
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/subprocess.py", line 424, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/subprocess.py", line 505, in run
    with Popen(*popenargs, **kwargs) as process:
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/subprocess.py", line 951, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/home/loginuser/anaconda3/envs/bentoml/lib/python3.9/subprocess.py", line 1837, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmphhd9d2uxfsTempFS/'

Environment:

  • OS: Ubuntu 22.04.2 LTS
  • Python Version 3.9 (conda)
  • BentoML Version 1.1.7
  • Bentoctl Version 0.4.0
  • Docker version 24.0.5, build ced0996

Additional context
bentoml/azure-container-instances-deploy#10

Hey I have the same, bug. Did you fix the issue please ?

Hello @BaptisteLoquette @hade94 , you can reinstall 0.4.0 and make the changes I proposed in the MR here : #214

What happens with version 0.3.4 is that the models are not copied in the image built, that's why they are not found in your setup.

In version 0.4.0, the context manager supposed to create a temporary file system containing the bento with his models is not passed to the aws-ec2 operator, thus the operator does not find the "/tmp/xxxx" folder containing the bento to build the image.

With the changes above, the models will be copied in the bento and the image will be correctly built.