a more fine grained way of administrate discourse (uses sso)
A. install
- clone the git:
1.1. (optional) python3 -m venv /path/to/new/clone/directory source /env/bin/activate - install requirements: pip3 install -r requirements.txt -f . (inside the clone directory)
- create 2 files from the dsso/*.template files
- create the database
- populate the database: python3 manage.py migrate
B. development start
python3 manage.py runserver 0.0.0.0:4911 -> should start on localhost:4911
C. Update
- pull the git:
- update requirements: pip3 install -r requirements.txt -f . (inside the clone directory)
- update the database: python3 manage.py migrate
D. Production Setup
- install ngnix
- install gunicorn3 2.1. Uncomment and modify the wsgi.py file (optional when using python venv -> A.1.1)
- collect static files "python3 manage.py collectstatic"
- create an ngnix server diretive inside your ngnix.conf file (use ngnix.conf.example as template)
- create an service file (use dsso.service.example as template)
- sudo systemctl start dsso
E. Install/Configure Discourse
- Install Discourse locally
- Configure Discourse for SSO
- Set the DISCOURSE_XXXX Variables in settings_local.py