微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PyInvoke、Pipenv 和 docker SDK:无法再找到您正在执行 pip 的文件夹

如何解决PyInvoke、Pipenv 和 docker SDK:无法再找到您正在执行 pip 的文件夹

我正在使用 pipenv 创建虚拟环境。 我还使用 pyinvoke 定义了一些构建任务。

在我的一项任务中,我使用 docker SDK 创建一个容器并在其中运行命令。 任务如下所示:

@task
def my_task(c):
  [...]
  client = docker.from_env()
  container = client.containers.run(
    my_image,detach=True,volumes={host_dir: {"bind": image_dir,"mode": "rw"}},)
  [...]

我使用以下命令运行任务:

pipenv run inv my_task

出于某种原因,这只起作用一次。 对于每次连续发射,我得到:

The folder you are executing pip from can no longer be found.

重新启动我的控制台后,一切又正常了。 为什么会这样?当我删除 client.container.run() 调用时,一切都按预期工作。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。