Si vous souhaitez utiliser geodjango avec Amazon Elastic Beanstalk, vous devez créer un AMI où vous pouvez installer PostGIS, puis faire pointer votre application Elastic Beanstalk vers cette AMI lors de la mise en route.
Voici un bon tutoriel sur la personnalisation d'une AMI EBS
. Il existe également un tutoriel AWS pour cela mais j'ai trouvé le premier plus facile à comprendre. Sur mon AMI personnalisée, j'ai installé geos, gdal, proj4 et postgis à partir de la source, et postgres en utilisant yum install postgres
. Vous trouverez ci-dessous les commandes que j'ai utilisées pour installer toutes les bibliothèques dans l'AMI.
Pour que l'application django trouve les bibliothèques, j'ai également défini une variable d'environnement supplémentaire dans la console AWS EBS. Dans la barre de menus de mon environnement, je suis allé dans configuration --> configuration logicielle et modifié les propriétés de l'environnement en ajoutant la propriété LD_LIBRARY_PATH
défini comme /usr/local/lib/:$LD_LIBRARY_PATH
.
Étant donné que les instances de l'application Beanstalk ne sont pas prévues pour exécuter la base de données elles-mêmes, j'ai également configuré un Amazon RDS Postgres base de données hébergée qui est un service relativement nouveau, il prend en charge PostGIS.
Si vous mettez tout cela ensemble, vous devriez obtenir une application GeoDjango très évolutive !
sudo yum install postgresql postgresql-devel postgresql-server postgresql9-contrib gcc gcc-c++ make libtool curl libxml2 libxml2-devel python-devel
wget http://download.osgeo.org/proj/proj-4.8.0.zip
unzip proj-4.8.0.zip
cd proj-4.8.0
./configure
make
sudo make install
cd ..
wget http://download.osgeo.org/geos/geos-3.4.2.tar.bz2
tar -xvf geos-3.4.2.tar.bz2
cd geos-3.4.2
./configure
make
sudo make install
cd ..
wget http://download.osgeo.org/gdal/1.10.1/gdal1101.zip
unzip gdal1101.zip
cd gdal-1.10.1
./configure --with-python=yes
make
sudo make install
cd ..
wget http://download.osgeo.org/postgis/source/postgis-2.1.1.tar.gz
tar -xvf postgis-2.1.1.tar.gz
cd postgis-2.1.1
./configure
make
sudo make install