aufsetzen_raspberry_lokal
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| aufsetzen_raspberry_lokal [2026/06/11 20:20] – ninin | aufsetzen_raspberry_lokal [2026/06/12 21:52] (current) – ninin | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | 1. Betriebssystem auf SD-Karte flashen | + | ====1. Betriebssystem auf SD-Karte flashen==== |
| - | 2. Hochfahren, Locale, Netzwerk und SSH einrichten | + | ====2. Hochfahren, Locale, Netzwerk und SSH einrichten==== |
| - | 3. Git installieren | + | ====3. Git installieren==== |
| sudo apt update | sudo apt update | ||
| sudo apt upgrade | sudo apt upgrade | ||
| Line 9: | Line 9: | ||
| git --version | git --version | ||
| | | ||
| - | 4. Git einrichten (ssh) | + | ====4. Git einrichten (ssh)==== |
| git config --global user.name [NAME] | git config --global user.name [NAME] | ||
| git config --global user.email [EMAIL] | git config --global user.email [EMAIL] | ||
| Line 16: | Line 16: | ||
| Schlüssel kopieren und bei Codeberg unter Profilbild -> Settings -> SSH- / GPG-Keys -> Add Key | Schlüssel kopieren und bei Codeberg unter Profilbild -> Settings -> SSH- / GPG-Keys -> Add Key | ||
| - | 5. Projektverzeichnis erstellen: | + | ====5. Projektverzeichnis erstellen:==== |
| mkdir sese_project | mkdir sese_project | ||
| - | 6. Klonen Git-Repository: | + | ====6. Klonen Git-Repository: |
| git clone ssh:// | git clone ssh:// | ||
| - | 5. Virtuelle Umgebung | + | ====7. Virtuelle Umgebung==== |
| cd sese_project/ | cd sese_project/ | ||
| Line 30: | Line 30: | ||
| source env/ | source env/ | ||
| - | 6. Requirements installieren | + | ====8. Requirements installieren==== |
| pip install -r app/ | pip install -r app/ | ||
| - | 7. Umgebungsvariablen setzen - .env-file? | + | ====9. .env-file |
| - | | + | nano .env |
| - | | + | |
| - | | + | mit folgendem Inhalt: |
| - | | + | |
| + | DJANGO_ENV=production | ||
| + | | ||
| + | SECRET_KEY=[KEY] | ||
| + | |||
| + | DEBUG=False | ||
| + | |||
| + | | ||
| + | POSTGRES_USER=[DB_USER] | ||
| + | POSTGRES_PASSWORD=[DB_PW] | ||
| + | POSTGRES_HOST=localhost | ||
| + | POSTGRES_PORT=5432 | ||
| - | 8. Datenbank erstellen | + | ====10. Postgres installieren==== |
| + | sudo apt install postgresql postgresql-contrib libpq-dev -y | ||
| - | 9. Superuser | + | ====11. Datenbank |
| + | sudo -i -u postgres psql | ||
| - | 10. Dump laden | + | CREATE DATABASE [DB_NAME]; |
| + | |||
| + | CREATE USER [DB_USER] WITH PASSWORD ' | ||
| + | |||
| + | ALTER ROLE [DB_USER] SET client_encoding TO ' | ||
| + | ALTER ROLE [DB_USER] SET default_transaction_isolation TO 'read committed'; | ||
| + | ALTER ROLE [DB_USER] SET timezone TO ' | ||
| + | |||
| + | GRANT ALL PRIVILEGES ON DATABASE [DB_NAME] TO [DB_USER]; | ||
| + | |||
| + | ALTER DATABASE [DB_NAME] OWNER TO [DB_USER]; | ||
| + | |||
| + | \q | ||
| - | 11. Testen: lässt sich der dev-server starten? | + | ====12. DB-Backup auf Raspberry kopieren==== |
| - | | + | |
| + | scp / | ||
| + | |||
| + | ====13. Dump laden==== | ||
| + | pg_restore | ||
| + | |||
| + | ====14. Hinzufügen IP zu ALLOWED_HOSTS in settings.py==== | ||
| + | |||
| + | ====15. Static Files==== | ||
| + | | ||
| + | |||
| + | Rechte für Nginx auf das staticfiles-Verzeichnis vergeben: | ||
| + | sudo chown -R :www-data [...]/ | ||
| + | sudo chmod -R 755 [...]/ | ||
| + | sudo chmod o+x / | ||
| + | |||
| + | ====16. Nginx==== | ||
| + | |||
| + | sudo apt install nginx -y | ||
| + | |||
| + | sudo nano / | ||
| + | |||
| + | with following content: | ||
| + | |||
| + | server { | ||
| + | listen 80; | ||
| + | server_name < | ||
| + | |||
| + | location / { | ||
| + | proxy_pass http:// | ||
| + | proxy_set_header Host $host; | ||
| + | proxy_set_header X-Real-IP $remote_addr; | ||
| + | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | ||
| + | } | ||
| + | |||
| + | location /static/ { | ||
| + | alias </ | ||
| + | } | ||
| + | } | ||
| + | |||
| + | Next, enable the configuration: | ||
| + | sudo ln -s / | ||
| + | sudo nginx -t | ||
| + | sudo systemctl restart nginx | ||
| + | |||
| + | Check: | ||
| + | sudo nginx -T | sed -n ' | ||
| + | |||
| + | ====17. Gunicorn==== | ||
| + | |||
| + | |||
| + | sudo nano / | ||
| + | |||
| + | content: | ||
| + | [Unit] | ||
| + | |||
| + | Description=gunicorn daemon for Django | ||
| + | After=network.target | ||
| + | |||
| + | [Service] | ||
| + | User=[SYSTEMUSER] | ||
| + | Group=www-data | ||
| + | RuntimeDirectory=gunicorn | ||
| + | WorkingDirectory=[...]/ | ||
| + | ExecStart=[...]/ | ||
| + | |||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| - | 12. | + | Start and enable the service: |
| + | sudo systemctl start gunicorn | ||
| + | sudo systemctl enable gunicorn | ||
aufsetzen_raspberry_lokal.1781209216.txt.gz · Last modified: by ninin
