我需要使用 pip 下载 Biopython 包。我跑了pip install biopython但是出现以下错误:
我验证了这个问题是因为网络通过尝试安装其他包(通过 pip 和其他方式)并获得网络连接错误来阻止大多数站点。为了允许这些下载,我需要编译下载源的 url 列表并将其发送给网络管理员以解除阻止。
根据 pip 文档(在 pip 维基百科文章中简要引用和解释),“可以在包及其依赖项的默认源中找到许多包——Python 包索引(PyPI)”,所以我去了 Biopython 的 PyPI 页面并找到了 github 存储库和包所需的依赖项。PyPI 页面上还有下载链接,我想确保允许下载的所有源。从包的原始源安装 pip 也是如此( github 存储库或原始包所在的任何地方),下载下 PyPI 页面中列出的包,还是搜索两者?
我正在从 Dockerfile 创建 Docker 映像。它在拉取时安装一个应用程序,Dockerfile 如下:
#Base image
FROM centos:latest
#Update image
RUN yum install -y git \
&& yum install -y wget \
&& yum install -y make
RUN git clone https://github.com/lskatz/lyve-SET.git /lyve-SET-1.1.4f/ \
&& cd /lyve-SET-1.1.4f/ \
&& make install
Run Code Online (Sandbox Code Playgroud)
我想将本地的文件放入容器中,我发现可以通过COPY /home/username/lyve-SET-1.1.4f/ /lyve-SET-1.1.4f/在 Dockerfile 中添加一行(例如)或运行容器、分离然后使用docker cp. 但是,我希望将文件放在 docker 映像中,而不要求它依赖于我的本地目录。基本上,我希望拉取图像的用户将文件放在其容器中(当它们运行时),而图像无法拉取,因为它取决于将文件/文件夹从主机复制到容器。我正在考虑将它们放在 github 上,然后制定一个RUN git clone从远程存储库获取文件的语句。
有没有其他方法可以将这些本地文件添加到图像中?该项目也将是一个持续集成/持续开发工作流程,因此我必须不断地将文件添加到映像中。