【问题标题】:how to do docker-compose pip install with a proxy?如何使用代理进行 docker-compose pip 安装?
【发布时间】:2015-08-04 19:18:03
【问题描述】:

我正在尝试让 docker-compose 构建工作。我原来的 Dockerfile 是,

FROM python:3.4.2-onbuild

我有 requirements.txt 作为,

Django==1.8.1
gunicorn==19.3.0
psycopg2==2.6
redis==2.10.3

因为在proxy后面,没有--proxy,pip install无法到达外部,

Downloading/unpacking Django==1.8.1 (from -r requirements.txt (line 1))
Cannot fetch index base URL https://pypi.python.org/simple/
Could not find any downloads that satisfy the requirement Django==1.8.1 (from -r requirements.txt (line 1))

我尝试将 Docker 文件更改为此,但它没有采用 --proxy pip 选项,

FROM python:3.4.2-onbuild

ENV HTTP_PROXY="http://<PROXY>"
ENV PIP_OPTIONS="--proxy $HTTP_PROXY"

ADD requirements.txt /requirements.txt

RUN pip install --proxy $HTTP_PROXY --requirement /requirements.txt 

但是,即使我使用 --no-cache,docker-compose 似乎也不会使用 Dockerfile。

【问题讨论】:

    标签: proxy docker pip dockerfile docker-compose


    【解决方案1】:

    手动执行docker build 时您的更改是否有效(不在作曲家内部)?

    一旦您知道它可以使用正常的 docker 构建,您应该能够使用 docker-compose build 强制 docker-compose 重新构建。

    【讨论】:

    • 非常感谢!我想我找到了可以让我的 Dockerfile 运行的一件事,那就是改变 FROM 而不是使用“-onbuild”,我相信使用 onbuild 它会忽略本地 Dockerfile。我还没有让我的带代理的 pip 安装工作,但是,至少我看到我的 Dockerfile 正在运行。
    • 知道了! docker build 和 docker-compose build 现在都在工作。我想我了解了常规映像和 onbuild 映像之间的区别?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-21
    • 1970-01-01
    • 1970-01-01
    • 2016-10-19
    • 1970-01-01
    • 2019-10-07
    • 1970-01-01
    相关资源
    最近更新 更多