- Install Devbox
- Run
devbox shellto install your packages and run the init_hook. This will activate your virtual environment and install Django. - Initialize PostgreSQL with
devbox run initdb. - Start the Postgres service by running
devbox services up postgresql. You can start it in the background usingdevbox services up -b postgresql. - In the root directory, run
devbox run create_dbto create the database and run your Django migrations - In the root directory, run
devbox run serverto start the server. You can access the Django example atlocalhost:8000
-
Install Devbox.
-
Run
devbox create --template djangoto create a new Devbox project in your directory. -
Install Python and PostgreSQL with
devbox install. This will also install the Devbox plugins for pip (which sets up your .venv directory) and PostgreSQL. -
Copy the requirements.txt and
todo_projectdirectory into the root folder of your project -
Start a devbox shell with
devbox shell. This will activate your virtual environment and install your requirements using the commands below.. $VENV_DIR/bin/activate pip install -r requirements.txt
These lines are already added to your
init_hookto automatically activate your venv.
The Django example uses a database. To set up the database, we will first create a new PostgreSQL database cluster, create the todo_db and user, and run the Django migrations.
-
Initialize your Postgres database cluster with
devbox run initdb. -
Start the Postgres service by running
devbox services start postgres -
In your
devbox shell, create the emptytodo_dbdatabase and user with the following commands.createdb todo_db psql todo_db -c "CREATE USER todo_user WITH PASSWORD 'secretpassword';"You can add this as a devbox script in your
devbox.jsonfile, so you can replicate the setup on other machines. -
Run the Django migrations to create the tables in your database.
python todo_project/manage.py makemigrations python todo_project/manage.py migrate
Your database is now ready to use. You can add these commands as a script in your devbox.json if you want to automate them for future use. See create_db in the projects devbox.json for an example.
You can now start your Django server by running the following command.
python todo_project/manage.py runserverThis should start the development server.


