【问题标题】:pip install git+url within a docker environment在 docker 环境中 pip install git+url
【发布时间】:2019-03-19 20:44:36
【问题描述】:

我正在使用这个 Docker (FROM lambci/lambda:python3.6),我需要安装一个私有存储库包。问题是 Docker 没有 git,我无法使用 apt-get 或 apk install 安装 git,因为 Docker 不是 Linux。

有没有办法修复这个安装的 git?或者我可以使用其他更好的方法来安装这个私有存储库包吗?

【问题讨论】:

    标签: python docker pip


    【解决方案1】:
    RUN python -m pip install git+URL_OF_GIT_REPO
    

    【讨论】:

    • 虽然此代码可能会回答问题,但提供有关此代码为何和/或如何回答问题的额外上下文可提高其长期价值。
    【解决方案2】:

    将此添加到makefile:

    # makefile
    git clone REPO
    cd REPO_DIR; python setup.py bdist_wheel
    cp REPO_DIR/dist/* .
    rm -rf REPO_DIR/
    

    将此添加到 dockerfile:

    # dockerfile
    RUN pip install REPO*.whl
    

    然后在docker中成功安装包

    【讨论】:

    • 你能解释一下为什么简单的 pip install -e 命令不起作用,我们需要做所有的手动工作吗? :)
    【解决方案3】:

    你能pip install源代码旁边的 git repo 并将它与你的代码一起安装到容器中吗?

    cd WORKING_DIRECTORY
    pip install --target ./ GIT_URL
    

    【讨论】:

    • 我基本上是在使用这个 repo (github.com/21Buttons/pychromeless),要做到这一点你建议我必须pip install --target ./src GIT_URL 吗?然后其余的应该可以正常工作吗?
    • 我尝试了这个pip install --target ./src GIT_URL,但它不起作用。导入时找不到存储库的依赖项。有没有办法将 pip install 放入一个文件中,然后使用这个文件稍后使用这个文件进行 pip install ?
    • 使用--target,你可以告诉python将它安装的文件放在哪里。然后你可以自己把它们挂载到你的容器中。
    猜你喜欢
    • 1970-01-01
    • 2021-10-17
    • 2020-08-17
    • 1970-01-01
    • 1970-01-01
    • 2017-07-08
    • 2020-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多