我对AWS和通用编码非常陌生。我编写了一个小型Django应用程序,现在我尝试借助此URL使用弹性beantalk将其部署在AWS上。 https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create-deploy-python-django.html
我的应用程序使用需要psycopg2
软件包的Postgres数据库,该软件包已添加到我的requirements.txt文件中。 (这不是此URL上的说明的一部分,但我知道我需要psycopg2,所以我添加了)
当我使用eb create django-env
创建EB环境时,出现以下错误:
我从EC2 /var/log/
获取的日志。
这是错误:
[2018-09-26T21:44:20.502Z]信息[3151]-[应用程序部署 app-d840-180926_224155 @ 1 / StartupStage0 / AppDeployPreHo ok / 03deploy.py] :正在启动活动... [2018-09-26T21:44:21.774Z]信息[3151]- [应用程序部署 app-d840-180926_224155 @ 1 / StartupStage0 / AppDeployPreHo ok / 03deploy.py] :活动执行失败,因为:收集雪花石膏== 0.7.10 (来自-r / opt / python / ondeck / app / requi rements.txt(第1行)) 正在下载https://files.pythonhosted.org/packages/2e/c3/9b7dcd8548cf2c00531763ba154e524af575e8f36701bacfe5bcadc674 40 / alabaster-0.7.10-py2.py3-none-any.whl收集 anaconda-client == 1.6.9(来自-r /opt/python/ondeck/app/requirements.txt(第2行)) 找不到满足anaconda-client == 1.6.9要求的版本(来自-r / opt / python / ondeck / app / requi rements.txt(第2行))(来自版本:1.1.1、1.2.2)无匹配项 找到anaconda-client == 1.6.9的发行版(来自-r /opt/python/ondeck/app/requirements.txt(第2行)) 您正在使用 pip版本9.0.1,但可用版本18.0。 请考虑通过“ pip install --upgrade pip”命令进行升级。
2018-09-26 21:44:21,768错误安装依赖项时出错: 命令'/ opt / python / run / venv / bin / pip install -r / opt / python / ondeck / app / requirements.txt'返回了非零退出状态1
追溯(最近一次通话): 主文件第22行中的文件“ /opt/elasticbeanstalk/hooks/appdeploy/pre/03deploy.py” install_dependencies() 在install_dependencies中的第18行,文件“ /opt/elasticbeanstalk/hooks/appdeploy/pre/03deploy.py” check_call('%s install -r%s'%(os.path.join(APP_VIRTUAL_ENV,'bin','pip'),requirements_file),shell = True) 在check_call中的文件“ /usr/lib64/python2.7/subprocess.py”,第186行 提高CalledProcessError(retcode,cmd)CalledProcessError:命令'/ opt / python / run / venv / bin / pip install -r /opt/python/ondeck/app/requirements.txt'返回非零退出 状态1(执行者:: NonZeroExitStatus)
我的Django项目的settings.py
文件具有psycopg2
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'test',
'USER': 'postgres',
'PASSWORD': 'password',
'HOST': 'localhost',
'PORT': '5432',
'TEST': {
'NAME': 'testdb',
},
}
}
[编辑]我的requirements.txt文件是:
c:\Users\abhi\OneDrive\Python-Projects\myproject>cat requirements.txt
Django==2.1.1
psycopg2==2.7.5
pytz==2018.5
我的问题是:
psycopg2
,而不是anaconda
。 这是我的辅助项目,我不知道如何解决。
答案 0 :(得分:0)
好吧,您的requirements.txt
列出了anaconda-client==1.6.9
。 PyPi上唯一可用的相同版本是1.1.1 and 1.2.2。 As far as the Github project确实存在1.6.9,但是PyPi / pip
并不知道它,因为它从未发布到PyPi。您的选择是:
conda
安装anaconda-client anaconda-client
的源代码捆绑到您的项目中,以便避免完全安装它。