python - 在heroku上部署geodjango的问题

标签 python django heroku geodjango

我使用 GeoDjango 制作了一个简单的 GIS 应用程序,但我正在努力将其部署在 Heroku 上。我尝试使用 Heroku-18 堆栈与 heroku config:set BUILD_WITH_GEO_LIBRARIES=1 但出现 [Errno 2] No such file or directory: 'gdal-config': 'gdal-config' 错误。我还尝试了heroku-16 https://github.com/cyberdelia/heroku-geo-buildpack.git buildpack 但最终出现此错误 ImportError: libjasper.so.1: 无法打开共享对象文件: 没有这样的文件或目录。我的requirements.txt如下:

beautifulsoup4==4.6.3
certifi==2018.11.29
chardet==3.0.4
dj-database-url==0.5.0
django-crispy-forms==1.7.2
django-heroku==0.3.1
django==2.1.4
gdal==2.1.3
gunicorn==19.9.0
idna==2.7
psycopg2==2.7.6.1
pytz==2018.7
requests==2.20.1
urllib3==1.24.1
whitenoise==4.1.2
wikipedia==1.4.0

我也在使用python 3.7.0。你能帮我吗?

最佳答案

是的,您的解决方案是正确的。原因如下:

Heroku-18 堆栈安装了 GDAL,是的...但它没有安装针对 python 绑定(bind)构建的版本。这对于 django 来说是可以的,它直接使用这些库,而不是通过 python 绑定(bind)。但是,直接使用 pip 安装 gdal 需要具有 python 绑定(bind)的版本。

关于python - 在heroku上部署geodjango的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53697829/

相关文章:

python - 如何将参数传递给 datetime.timedelta

python - 如果嵌套列表中的子列表部分匹配另一个嵌套列表中的子列表,则返回该子列表

python - sanic.exceptions.MethodNotSupported : Method GET not allowed for URL/model/parse

python - 根据条件在 Numpy 数组中选择随机坐标

python - 尝试使用 ElasticSearch 后端更新索引时出错

django - docker-compose django-postgres错误

python - 处理多个应用程序覆盖 Django 中的管理命令

python - 在 heroku python 教程中,virtualenv 问题安装 wsgiref(ez_setup 语法错误?)

ruby-on-rails - 为什么 Heroku 托管的应用程序需要很长时间才能启动?

python - Heroku 上的 Gunicorn + Flask,模块名称和应用程序名称不正确