我使用 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/