Hello coders!
This article mentions a few open-source Django samples that bundle Docker with different database engines: SQLite
, MySql
, and PostgreSQL
. The projects might be useful to developers that what to switch from the minimal SQLite to a more powerful DB engine like PgSQL or MySql. Being released under the MIT License
, the related Docker scripts can be copied and incorporated into other projects.
Thanks for reading!
Django & Docker SQLite
This sample is the most simple one. The SQLite database is created by Django during the migration and does not require any additional Docker layer.
- 👉 Django Material Kit -
source code
- 👉 Django Material Kit -
product page
(for support)
Once the product is downloaded, the app can be started via a single command:
$ docker-compose up --build
During the execution, the Docker scripts prepare the environment, install the modules and migrate the database. In the end, the app should be up & running as this LIVE Demo of the product.
Django & Docker, MySql
Compared to the SQLite version, this sample requires a manual migration of the database.
- 👉 Django & Docker, MySql Version - source code
Here is the full set up of the project.
Step 1 - Download the sources
$ git clone https://github.com/app-generator/sample-docker-django-mysql.git
$ cd sample-docker-django-mysql
Step 2 - Execute the Docker set up
$ docker-compose up --build
Step 3 - Migrate DB & create SuperUser
$ docker-compose run --rm appseed-app python manage.py migrate
$ docker-compose run --rm appseed-app python manage.py createsuperuser
Step 4 - Access the app in the browser
Visit http://localhost:5085
in your browser. The app should be up & running.
Django, Docker & PgSQL
The last sample uses PostgreSQL for app persistence, a popular DB engine heavily used in production.
👉 Django, Docker & PgSQL - source code
The product can be started and used in a local environment by typing the same commands as for the MySql version:
- ✅ Download
source code
- ✅ Execute
docker-compose up --build
- ✅
Migrate the database
- ✅
Create SuperUser
(optional)
All samples are built on top of Material Kit, an amazing design provided for free by Creative-Tim. Here is the product description, copied from the official page:
👉 Material Kit - Open-Source Bootstrap 5 design
Designed for those who like bold elements and beautiful websites, Material Kit is ready to help you create stunning websites and web apps. The product is built on top of Bootstrap 5 with over 60 frontend individual elements, like buttons, inputs, navbars, nav tabs, cards, or alerts, giving you the freedom of choosing and combining.
Thanks for reading!
For more resources, please access:
Top comments (6)
Nice work!! Thanks for sharing!!
ty Rai
Nice work.
Thanks for coding & sharing the projects.
🚀🚀
The PostgreSQL set up helps.
Is possible to move the migration command inside scripts?
Yes, but the set up should use another pattern when
entrypoint.sh
handles the commands.🚀🚀