我已经安装了gunicorn,但找不到gunicorn命令:
# pip3.4 install gunicorn
Requirement already satisfied (use --upgrade to upgrade): gunicorn in /usr/local/python3.4/lib/python3.4/site-packages
# gunicorn
-bash: gunicorn: command not found
Run Code Online (Sandbox Code Playgroud)
有什么问题,gunicorn安装路径是不是被系统识别?
我在 Debian 上遇到了同样的问题。
事实证明,在 Debian 上,文档建议通过 apt 安装 gunicorn:
$ sudo apt install gunicorn
Run Code Online (Sandbox Code Playgroud)
我遇到了同样的问题,结果我不得不将 gunicorn 二进制路径添加到 Linux PATH 变量中。您可以先回显 $PATH 以查看系统上列出的所有二进制路径。然后找出gunicorn的安装位置。就我而言,我使用的是 python 虚拟环境和 pyenv,它有助于分别管理多个 python 版本和依赖项。
(venv3.6) dave@daverig (develop)? % pip show gunicorn
Name: gunicorn
Version: 19.7.1
Summary: WSGI HTTP Server for UNIX
Home-page: http://gunicorn.org
Author: Benoit Chesneau
Author-email: benoitc@e-engura.com
License: MIT
Location: /home/dave/.pyenv/versions/3.6.2/envs/venv3.6/lib/python3.6/site-packages
Run Code Online (Sandbox Code Playgroud)
请注意,gunicorn 已安装,/home/dave/.pyenv/versions/3.6.2/envs/venv3.6/lib/python3.6/site-packages并且此特定 Python 版本的二进制文件的相应路径位于/home/dave/.pyenv/versions/3.6.2/envs/venv3.6/bin. 所以我不得不通过这样的~/.profile文件将它添加到 Linux 路径中;
export PATH=$PATH:$HOME/.pyenv/versions/3.6.2/envs/venv3.6/bin那么当然您想使用source ~/.profile或重新启动终端来刷新它。一旦我能够做到这一点,gunicorn 二进制文件就可以在我的控制台上使用了;
(venv3.6) dave@daverig (develop)? % gunicorn --version
gunicorn (version 19.7.1)
Run Code Online (Sandbox Code Playgroud)
我刚刚创建了一个名为gunicorn的文件,并在下面键入与我的开发服务器相同的代码,并将其包含到系统路径中,例如/usr/bin
#!/usr/local/bin/python3.4
#-*- coding: utf-8 -*-
import re
import sys
from gunicorn.app.wsgiapp import run
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$','',sys.argv[0])
sys.exit(run())
Run Code Online (Sandbox Code Playgroud)
这样,它解决了我的问题,但仍然让我困惑,为什么gunicorn命令没有生成并自动包含到系统路径中?为什么我的开发服务器会这样做,都是相同的操作系统(centos 6.5 x64)
尝试 2 小时后,gunicorn 从源代码安装拯救了我!
pip3 install git+https://github.com/benoitc/gunicorn.git
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10991 次 |
| 最近记录: |