Skip to content

saelozahra/jahadeabresani

Repository files navigation

جهاد آب رسانی

JahadeAbresani is a simple blog application written by Python3 & Django2.2. This project is for educational purposes with FREE video course which you can find on https://boby.cloud .

Demo

Final project preview.

Technologies used in this course

This project and video series are best practices for Backend Engineering with Python and Django and the most common technologies every backend engineer should know. Technologies used in this course are listed below.

Installation

First clone or download this project.

$ git clone https://github.com/saelozahra/jahadeabresani/

Then create docker network and volumes as below.

$ docker volume create abresani_postgresql
$ docker volume create abresani_static_volume
$ docker volume create abresani_files_volume
$ docker network create nginx_network
$ docker network create abresani_network

You need to create .env file in the project root file with default values.

POSTGRES_USER=*******
POSTGRES_PASSWORD=**********
POSTGRES_DB=********

Now run django and postgresql with docker-compose.

$ docker-compose up -d

Then run nginx container with docker-compose.

$ cd config/nginx/
$ docker-compose up -d

You can see JahadeAbresani web page on https://localhost, Template and API's are accessable by docker containers which you can see with below command.

$ docker ps -a

Output should be like this.

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
fc6cc9d6d3d7        nginx_nginx         "nginx -g 'daemon of…"   2 hours ago         Up 2 hours          0.0.0.0:80->80/tcp       nginx
05103904dcb8        ae80efb17475        "gunicorn --chdir bl…"   2 hours ago         Up 2 hours          0.0.0.0:8000->8000/tcp   abresani
4a183e90a9eb        postgres:10         "docker-entrypoint.s…"   2 hours ago         Up 2 hours          0.0.0.0:5432->5432/tcp   abresani_postgresql

nginx container as common web server, JahadeAbresani container as django application and abresani_postgresql as postgreSQL database container.

Contributing

Contributions are welcome and will be fully credited. I'd be happy to accept PRs for template extending.

License

This project is licensed under the MIT License - see the LICENSE file for details