【问题标题】:How to build linux container from Windows in a Linux VM?如何在 Linux VM 中从 Windows 构建 linux 容器?
【发布时间】:2020-05-31 04:58:43
【问题描述】:

我设置了一个运行 Fedora 31 的 VM 并在其上安装了 docker。公开所有必要的端口,然后在 Debian WSL 运行时中安装 docker 客户端应用程序。导出了必要的环境变量,到目前为止一切似乎都很好,如果我发出:

docker run --rm python:3.8-slim python -V

我明白了:

Python 3.8.3

但是,当我尝试构建一个“真实”的项目时,该项目在完全 linux 环境下构建得非常好,我会遇到很多这样的问题:

Installing dependencies from Pipfile.lock (df8922)…
Failed to load paths: /bin/sh: 1: /root/.local/share/virtualenvs/app-4PlAip0Q/bin/python: not found

Output:
Failed to load paths: /bin/sh: 1: /root/.local/share/virtualenvs/app-4PlAip0Q/bin/python: not found

Output:
Failed to load paths: /bin/sh: 1: /root/.local/share/virtualenvs/app-4PlAip0Q/bin/python: not found

Output:
Ignoring atomicwrites: markers 'sys_platform == "win32"' don't match your environment
Ignoring colorama: markers 'sys_platform == "win32"' don't match your environment
Ignoring pypiwin32: markers 'sys_platform == "win32" and python_version >= "3.6"' don't match your environment

最终以这样的方式失败:

[pipenv.exceptions.InstallError]: ERROR: No matching distribution found for pywin32==227 (from -r /tmp/pipenv-4jkbeenf-requirements/pipenv-jlzeswcc-requirement.txt (line 1))
ERROR: Couldn't install package: pywin32
 Package installation failed...

显然,它尝试像在 Windows 中运行一样安装 deps,但我如何告诉守护程序假设它在 linux(如 VM)中运行?

目标是在 PyCharm 中使用这个 python 图像作为远程虚拟环境。

【问题讨论】:

    标签: python windows docker windows-subsystem-for-linux


    【解决方案1】:

    听起来您想在 linux vm 上运行 docker,但您为 windows 安装了 docker desktop。如果你想在 linux vm 上使用 docker,我认为你需要 docker-engine for linux OS。

    如果你想在 windows 上 docker 并运行 linux,请在 windows OS 上安装 docker for windows desktop 并将 docker 桌面模式切换到 wsl 模式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-06
      • 1970-01-01
      • 2014-05-17
      • 2019-03-25
      • 2012-01-14
      • 2018-09-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多