我目前正在研究Google云平台基础知识"实验室和我遇到了问题。 每次我必须使用CoreOS实例来启动docker实例时,我都会遇到错误。
例如:在Cloud SQL实验室中,在某些时候我必须使用以下命令构建我刚刚从git repo克隆的文件夹的docker镜像:
docker build -t cp100/cloudsql-python cp100-cloud-sql-python
给了我一个以错误结尾的文本墙:
Downloading/unpacking flask
Cannot fetch index base URL http://pypi.python.org/simple/
Could not find any downloads that satisfy the requirement flask
No distributions at all found for flask
Storing complete log in /root/.pip/pip.log`
事情是,没有" /root/.pip/pip.log"文件。 所以这是我的问题:
教程是否已过时,如果是,我在哪里可以找到最新的教程?
为什么会这样?我认为这是因为pip或Python或两者都没有安装,但命令docker build
不应该负责安装吗?
我该如何解决?
cp100-cloud-sql-python文件位于https://github.com/GoogleCloudPlatformTraining/cp100-cloud-sql-python.git
感谢您的回答。
答案 0 :(得分:2)
好的,我自己找到了答案:
因此它不起作用的原因是pip(和易安装)使用HTTP而pypi.python.org需要HTTPS,此问题在此处进一步说明: https://bugzilla.redhat.com/show_bug.cgi?id=1510444
因此,为了解决这个问题,我从
修改了应用程序内的DockerfileFROM google/debian:wheezy
MAINTAINER Sharif Salah <sharif.salah+docker@gmail.com>
RUN apt-get update && \
apt-get install -y python-dev python-pip python-mysqldb && \
pip install flask
ADD app /app
EXPOSE 80
CMD [ "python", "/app/app.py" ]
到
FROM google/debian:wheezy
MAINTAINER Sharif Salah <sharif.salah+docker@gmail.com>
RUN apt-get update && \
apt-get install -y python-dev python-setuptools python-mysqldb && \
easy_install -i https://pypi.python.org/simple flask
ADD app /app
EXPOSE 80
CMD [ "python", "/app/app.py" ]
将强制easy_install使用-i。
之后指定的地址它适用于我的情况,但正如Bugzilla所记录的那样,它可能不适用于所有事情。 我希望这能帮到某人