我正在试图用瓶子和gevent构建一个码头集装箱,但它并不像我希望的那样工作。我可以一起破解它,但为什么不安装工作?以下全部细节。为什么“pip install”不能在debian docker容器中使用Flask和gevent?
Dockerfile:
FROM debian:jessie
建集装箱:
docker build --pull --no-cache -t flask-test .
运行容器:
docker run -it flask-test /bin/bash
在容器:
apt-get update
apt-get -y install python-pip
apt-get -y install python-dev
pip install Flask gevent
测试:
python -c "from flask import Flask"
错误:
[email protected]:/# python -c "from flask import Flask"
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/flask/__init__.py", line 17, in <module>
from werkzeug.exceptions import abort
ImportError: No module named werkzeug.exceptions
尝试修复(忘了PIP):
apt-get -y install python-flask
再次测试。错误:
[email protected]:/# python -c "from flask import Flask"
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/flask/__init__.py", line 21, in <module>
from .app import Flask, Request, Response
File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 26, in <module>
from . import json, cli
File "/usr/local/lib/python2.7/dist-packages/flask/cli.py", line 17, in <module>
import click
ImportError: No module named click
安装点击,到底是什么。
pip install click
现在它的工作。
[email protected]:/# python -c "from flask import Flask"
[email protected]:/#
编辑:我可以创造我的MacBook,pip install Flask gevent
一个新的virtualenv,它工作正常。 Docker中的Python版本2.7.9-2 + deb8u1,我的Macbook上的Python 2.7.10。这可能吗?
编辑2:上述命令实际上工作。我真的做到了(这被打破)是:
容器内:
apt-get update
apt-get -y install python-pip
pip install Flask gevent
apt-get -y install python-dev
pip install Flask gevent
所以,不点子没有蟒蛇-dev的安装这些!
感谢您的回答。我试过'pip install --process-dependency-links Flask gevent'和'pip install --process-dependency-links --force-reinstall Flask gevent',我也遇到同样的问题。 :( – dfrankow
我发现我的问题,我在安装python-dev之前一直运行pip install,然后安装python-dev,我不认为这很重要,但它确实,我很快就会删除这个问题。 – dfrankow