Skip to content

A Python-Django web mapping application for mapping fishing marks in Dublin.

Notifications You must be signed in to change notification settings

GonzoTheDev/geodjango_assignment

Repository files navigation

GeoDjango Fishing Mark Map

A fishing mark locations map application, showing fishing locations around Ireland and the types of fish you can catch there.

Website: https://geodjango.shanewilson.ie

Login

Username: test_user

Password: test_password

Steps to Deploy to cloud

Create the docker network:

docker network create geodjango_assignment_network

Create Postgres GIS database container in docker:

docker create --name geodjango_assignment_postgis --network geodjango_assignment_network --network-alias geodjango-assignment-postgis -t -v geodjango_assignment_postgis_data:/var/lib/postgresql -e 'POSTGRES_USER=c20703429' -e 'POSTGRES_PASS=c20703429' kartoza/postgis

Create PGAdmin4 database frontend management system container in docker:

docker create --name geodjango_assignment_pgadmin4 --network geodjango_assignment_network --network-alias geodjango-assignment-pgadmin4 -t -v geodjango_assignment_pgadmin_data:/var/lib/pgadmin -e '[email protected]' -p 20080:80 -e 'PGADMIN_DEFAULT_PASSWORD=YOURPASSWORD' dpage/pgadmin4

IGNORE Pull the Django application container from DockerHub:

docker pull drgonzo19929/geodjango_assignment

Create the app image:

docker build -t geodjango_assignment .

Create the Django application container from the image:

docker create --name geodjango_assignment --network geodjango_assignment_network --network-alias geodjango_assignment -t -p 8001:8001 geodjango_assignment

Create the certbot docker image:

cd certbot
docker build -t geodjango_assignment_nginx_certbot .

Create the certbot and nginx server container:

docker create --name geodjango_assignment_nginx_certbot --network geodjango_assignment_network --network-alias geodjango-assignment-nginx-certbot -p 80:80 -p 443:443 -t -v geodjango_assignment_web_data:/usr/share/nginx/html -v $HOME/geodjango_assignment_nginx_certbot/conf:/etc/nginx/conf.d -v /etc/letsencrypt:/etc/letsencrypt -v /var/www/certbot -v html_data:/usr/share/nginx/html/static geodjango_assignment_nginx_certbot

Setup the SSL cert with certbot inside the container:

docker exec -it geodjango_assignment_nginx_certbot /bin/bash
certbot certonly --nginx

Move the configuration files (geodjango_assingment.conf & headers.conf) to correct directory

mv $HOME/geodjango_assignment/conf $HOME/geodjango_assignment_nginx_certbot/conf

Start the containers in order:

docker start geodjango_assignment_postgis
docker start geodjango_assignment_pgadmin4
docker start geodjango_assignment
docker start geodjango_assignment_nginx_certbot

Run the migrations:

docker exec geodjango_assignment bash -c "conda run -n geodjango_assignment python manage.py migrate"

Import the map locations data:

docker exec geodjango_assignment bash -c "conda run -n geodjango_assignment python manage.py import_fishing_marks"

Create a superuser to be able to setup users etc. :

docker exec -it geodjango_assignment bash
python manage.py createsuperuser

About

A Python-Django web mapping application for mapping fishing marks in Dublin.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published