我目前正在“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”文件。
所以这是我的问题:
docker build
命令不应该负责安装吗? https://github.com/GoogleCloudPlatformTraining/cp100-cloud-sql-python.git上提供了cp100-cloud-sql-python文件
感谢您的回答。
最佳答案
好吧,我自己找到了答案:
所以它不起作用的原因是pip(并且易于安装)使用HTTP,而pypi.python.org需要HTTPS,此问题在此处进一步记录:
https://bugzilla.redhat.com/show_bug.cgi?id=1510444
因此,为了修复它,我在
FROM 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上记录的那样,它可能不适用于所有情况。
我希望这会帮助某人
关于python - CoreOS构建Docker镜像(CP100A培训),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49445712/