2022-06-26 16:41:13 +02:00
# The project template
2015-02-11 17:15:52 +01:00
2022-06-26 16:41:13 +02:00
```text
mysite/
home/
migrations/
2015-10-14 22:45:58 +02:00
__init__ .py
2022-06-26 16:41:13 +02:00
0001_initial.py
0002_create_homepage.py
templates/
home/
home_page.html
__init__ .py
models.py
search/
templates/
search/
search.html
__init__ .py
views.py
mysite/
settings/
2015-10-14 22:45:58 +02:00
__init__ .py
2022-06-26 16:41:13 +02:00
base.py
dev.py
production.py
static/
css/
mysite.css
js/
mysite.js
templates/
404.html
500.html
base.html
__init__ .py
urls.py
wsgi.py
Dockerfile
manage.py
requirements.txt
```
## The "home" app
Location: `/mysite/home/`
This app is here to help get you started quicker by providing a `HomePage` model with migrations to create one when you first set up your app.
## Default templates and static files
Location: `/mysite/mysite/templates/` and `/mysite/mysite/static/`
2023-01-01 21:19:43 +01:00
The templates directory contains `base.html` , `404.html` and `500.html` . These files are very commonly needed on Wagtail sites, so they have been added into the template.
2015-02-11 17:15:52 +01:00
2015-10-15 10:21:47 +02:00
The static directory contains an empty JavaScript and CSS file.
2015-02-11 17:15:52 +01:00
2022-06-26 16:41:13 +02:00
## Django settings
2015-02-11 17:15:52 +01:00
2022-06-26 16:41:13 +02:00
Location: `/mysite/mysite/settings/`
2015-02-11 17:15:52 +01:00
2022-06-26 16:41:13 +02:00
The Django settings files are split up into `base.py` , `dev.py` , `production.py` and `local.py` .
2015-02-11 17:15:52 +01:00
2022-06-26 16:41:13 +02:00
- `base.py`
This file is for global settings that will be used in both development and production. Aim to keep most of your configuration in this file.
2015-02-11 17:15:52 +01:00
2022-06-26 16:41:13 +02:00
- `dev.py`
This file is for settings that will only be used by developers. For example: `DEBUG = True`
2015-02-11 17:15:52 +01:00
2022-06-26 16:41:13 +02:00
- `production.py`
This file is for settings that will only run on a production server. For example: `DEBUG = False`
2018-10-27 15:18:25 +02:00
2022-06-26 16:41:13 +02:00
- `local.py`
This file is used for settings local to a particular machine. This file should never be tracked by a version control system.
2018-10-27 15:18:25 +02:00
2022-06-26 16:41:13 +02:00
```{note}
On production servers, we recommend that you only store secrets in ``local.py`` (such as API keys and passwords). This can save you headaches in the future if you are ever trying to debug why a server is behaving badly. If you are using multiple servers which need different settings then we recommend that you create a different ``production.py`` file for each one.
```
2018-10-27 15:18:25 +02:00
2022-06-26 16:41:13 +02:00
## Dockerfile
2018-10-27 15:18:25 +02:00
2022-06-26 16:41:13 +02:00
Location: `/mysite/Dockerfile`
2018-10-27 15:18:25 +02:00
2022-06-26 16:41:13 +02:00
Contains configuration for building and deploying the site as a [Docker ](https://docs.docker.com/ ) container. To build and use the Docker image for your project, run:
2018-10-27 15:18:25 +02:00
2022-10-13 08:25:19 +02:00
```sh
2022-06-26 16:41:13 +02:00
docker build -t mysite .
docker run -p 8000:8000 mysite
```