This repository is not longer maintained! I have been moving to Docker deployments and therefore don't use this as a base anymore. Therefore the base technologies like Python, Django and Wagtail are a bit outdated to start a new project, but of course you can still use this repository as inspiration for your own work!
Wagtail CMS quickstart for deployment on PythonAnywhere
- You have an account at PythonAnywhere
- You use virtualenv for isolated local python development
- You are familiar with the Django basics, at least visited their great online tutorial
This quickstart uses Wagtail 2.3 LTS and Django 1.11 LTS on Python 3.6, so that you can get along without updates for as long as possible. You may change this requirements to your needs. For all supported combinations of Wagtail, Django and Python please refer to the Wagtail documentation.
Open a bash console on PythonAnywhere
Create a virtualenv
mkvirtualenv wagtail-pythonanywhere-quickstart-py36 --python=/usr/bin/python3.6Clone the repository
git clone https://github.com/texperience/wagtail-pythonanywhere-quickstart.gitChange into the project directory
cd wagtail-pythonanywhere-quickstartInstall the python packages
pip install -r requirements.txtPrepare a local configuration file
- Create a new file called
local.pyundermysite/settings - Define at least the
SECRET_KEYandALLOWED_HOSTSsettings - Typically you may want to define
DATABASESand pointMEDIA_ROOTas well asSTATIC_ROOTto a persistent directory
- Create a new file called
Initialize the database
python manage.py migrateCreate a superuser account
python manage.py createsuperuserCollect static files
python manage.py collectstatic
- Open the PythonAnywhere "Web" tab
- Select
Add a new web app - Choose
Manual configuration (including virtualenvs) - Choose
Python 3.6
After your web app is created:
- Set the source code location to your projects home
- Change the WSGI configuration file
- Set the virtualenv path to the environment created above
- Set static and media urls and location
- Restart your application
The code is open source and released under the ISC License (ISCL). It is available on GitHub and follows the guidelines about Semantic Versioning for transparency within the release cycle and backward compatibility whenever possible.
All contributions are welcome, whether bug reports, code contributions and reviews, documentation or feature requests.