1. SSH naar uw server
ssh root@<server-ip>
2. Zoek inloggegevens
- Standaardgebruiker:
django - Wachtwoord opgeslagen in:
/root/.cloudzy-creds
(Optioneel) Wijzig het standaardwachtwoord: passwd django
3. Overschakelen naar de app-gebruiker
su - django
4. PostgreSQL (optioneel)
Als PostgreSQL is geïnstalleerd, stel dan de database en gebruiker in (voorbeeld):
sudo -u postgres psql
CREATE DATABASE <db>;
CREATE USER <user> WITH PASSWORD <password>;
GRANT ALL PRIVILEGES ON DATABASE <db> TO <user>;
q
Werk vervolgens bij settings.py DATABASES met gastheer localhost, databasenaam, gebruiker en wachtwoord. Uitvoeren python manage.py migrate.
5. Implementeer uw app
Een voorbeeld van een Flask-app is al actief en toegankelijk op: http://<server-ip
Om uw eigen app te implementeren:
- Navigeer naar uw applicatiemap (of kloon een nieuw project):
cd~/django_app - (Optioneel) Standaardapp vervangen:
gitclone<your_repo_url> . - Activeer de virtuele omgeving:
sourcevenv/bin/activate - Installeer de vereiste pakketten:
pip install -r requirements.txt - Aanpassen
settings.py: instellenALLOWED_HOSTSnaar uw domein/IP en zorg ervoor datSTATIC_ROOTbestaat. - Database migreren:
python manage.py migrate - Verzamel statische elektriciteit in
STATIC_ROOT:python manage.py collectstatic --noinput - Start Gunicorn opnieuw om de wijzigingen toe te passen:
sudo systemctl restart gunicorn - Start Nginx opnieuw op:
sudo systemctl restart nginx
6. Toegang tot uw app
Your Django app is available at: http://<server-ip
Nginx stuurt verzoeken via een Unix-socket door naar Gunicorn.
7. Poort of domein wijzigen?
Om het domein, de poort aan te passen of SSL toe te voegen:
- Bewerk de configuratie van de Nginx-site:
sudo nano /etc/nginx/sites-available/gunicorn_django - Testconfiguratie:
sudo nginx -t - Nginx opnieuw laden:
sudo systemctl restart nginx
8. HTTPS inschakelen (optioneel)
Gebruik Certbot om HTTPS in te schakelen.
Installeer certbot:
sudo apt install certbot python3-certbot-nginx -y
Certificaten verkrijgen en Nginx automatisch updaten:
sudo certbot --nginx -d example.com
Test:
nginx -t && sudo systemctl reload nginx