Deploy Django - Create Requirements
Lock in Dependencies
When you create a Django application, there are some Python packages that your project depends on.
Django itself is a Python package, and we have to make sure that the server where we deploy our project also has the Django package installed, and all the other packages your project requires.
Luckily, there is a command for this as well, just run this command in the command view:
py -m pip freeze > requirements.txt
The result of the above command is a file called requirements.txt
being created in the project:
my_tennis_club
members/
my_tennis_club/
mystaticfiles/
productionfiles/
db.sqlite3
manage.py
requirements.txt
The file contains all the packages that this project depends on: with this content:
my_tennis_club/requirements.txt
:
asgiref==3.5.2
Django==4.1.4
psycopg2-binary==2.9.5
sqlparse==0.4.3
tzdata==2022.7
whitenoise==6.2.0
Note: You can create this file on your own, and insert the packages manually, just make sure you get all the packages your project depends on, and you must name the file requirements.txt
.
Now the hosting provider knows which packages to install when we deploy our project.
But Elastic Beanstalk needs more information, go to the next chapter Create django.config to create an "EB" config file.