如何使用BitBucket管道上的Docker来测试需要PostGIS的Django应用程序?

2024-04-20 13:08:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用BitBucket管道在私有BitBucket回购上构建Django应用程序的自动化测试。在

我已经准备好了所有的测试,可以使用./manage.py testtox来运行它们。这在本地运行得很好,测试将构建一个(临时的)PostGIS测试数据库。PostGIS和gdal之类的东西是所有requirementst.txt正确安装所必需的。在

我在Docker上找到一个完整的Python+PostGIS/gdal etc堆栈的Docker映像时遇到了问题,而且我缺乏自己构建它的技能。在

我失败的尝试记录在GitHub上: https://github.com/zostera/docker-django-ci

有人能给我指出正确的方向吗(教程),或者用一个实际的例子来帮助我?在


Tags: djangodockerpytesttxt数据库应用程序tox
2条回答

我写了一篇关于Building, Testing and Deploying Django App with Bitbucket Pipelines的详细文章

这可能是用PostGIS扩展它的一个好的开始,我将为您指出正确的方向。除了post之外,我们还提供了开源的Dockerfiles,您可以扩展它来支持PostGIS。在

你需要一个很好的安装PostGIS的教程,比如试试this one。在

centos7-postgresql9.4Dockerfile开始,在VOLUME行之前添加用于安装PostGIS的命令:

...

# install PostGIS
RUN yum -y install postgis2_94 postgis2_94-client

VOLUME ["/var/lib/pgsql/9.4"]

最后,您必须在数据库中启用扩展。将此代码添加到start_postgres.sh

^{pr2}$

我们最近解决了这个问题,并发布了我们自己的Docker映像,支持Python、Django、Postgres、PotGIS和其他一些东西。在

https://github.com/zostera/docker-django-ci

相关问题 更多 >