Django

Framework internetowy w języku Python, który sprzyja szybkiemu tworzeniu aplikacji oraz przejrzystemu, pragmatycznemu projektowaniu.

1. Połącz się przez SSH z serwerem

ssh root@<server-ip>

2. Znajdź dane logowania

  • Użytkownik domyślny: django
  • Hasło zapisane w: /root/.cloudzy-creds

(Opcjonalnie) Zmień domyślne hasło: passwd django

3. Przejdź do użytkownika aplikacji

su - django

4. PostgreSQL (opcjonalnie)

Jeśli zainstalowano PostgreSQL, skonfiguruj bazę danych i użytkownika (przykład):

sudo -u postgres psql
CREATE DATABASE <db>;
CREATE USER <user> WITH PASSWORD <password>;
GRANT ALL PRIVILEGES ON DATABASE <db> TO <user>;
q

Następnie zaktualizuj settings.py DATABASES z gospodarzem localhost, nazwę bazy danych, użytkownika i hasło. Uruchom python manage.py migrate.

5. Wdrożenie aplikacji

Przykładowa aplikacja Flask jest już uruchomiona i dostępna pod adresem: http://<server-ip

Aby wdrożyć własną aplikację:

  1. Przejdź do katalogu aplikacji (lub sklonuj nowy projekt): cd ~/django_app
  2. (Opcjonalnie) Zastąp domyślną aplikację: git clone <your_repo_url> .
  3. Aktywuj środowisko wirtualne: source venv/bin/activate
  4. Zainstaluj wymagane pakiety: pip install -r requirements.txt
  5. Dostosuj settings.py: zestaw ALLOWED_HOSTS do swojej domeny/adresu IP i upewnij się, że STATIC_ROOT istnieje.
  6. Migracja bazy danych: python manage.py migrate
  7. Zbierz statyczną energię do STATIC_ROOT: python manage.py collectstatic --noinput
  8. Uruchom ponownie Gunicorn, aby zastosować zmiany: sudo systemctl restart gunicorn
  9. Uruchom ponownie Nginx: sudo systemctl restart nginx

6. Uzyskaj dostęp do swojej aplikacji

Your Django app is available at: http://<server-ip

Nginx przekazuje żądania do Gunicorn za pośrednictwem gniazda Unix.

7. Zmiana portu lub domeny?

Aby dostosować domenę, port lub dodać SSL:

  1. Edytuj konfigurację witryny Nginx: sudo nano /etc/nginx/sites-available/gunicorn_django
  2. Konfiguracja testowa: sudo nginx -t
  3. Przeładuj Nginx: sudo systemctl restart nginx

8. Włącz protokół HTTPS (opcjonalnie)

Użyj Certbot, aby włączyć HTTPS.

Zainstaluj certbot:

sudo apt install certbot python3-certbot-nginx -y

Pobieraj certyfikaty i aktualizuj Nginx automatycznie:

sudo certbot --nginx -d example.com

Test:

nginx -t && sudo systemctl reload nginx

Szczegóły aplikacji