1. SSH na váš server
ssh root@<server-ip>
2. Najít přihlašovací údaje
- Výchozí uživatel:
django - Heslo uloženo v:
/root/.cloudzy-creds
(Volitelné) Změňte výchozí heslo: passwd django
3. Přepněte na uživatele aplikace
su - django
4. PostgreSQL (volitelné)
Pokud byl nainstalován PostgreSQL, nastavte databázi a uživatele (příklad):
sudo -u postgres psql
CREATE DATABASE <db>;
CREATE USER <user> WITH PASSWORD <password>;
GRANT ALL PRIVILEGES ON DATABASE <db> TO <user>;
q
Poté aktualizujte settings.py DATABASES s hostitelem localhost, název databáze, uživatel a heslo. Spusťte python manage.py migrate.
5. Nasazení aplikace
Ukázková aplikace Flask již běží a je dostupná na adrese: http://<server-ip
Chcete-li nasadit vlastní aplikaci:
- Přejděte do adresáře aplikace (nebo naklonujte nový projekt):
cd~/django_app - (Volitelné) Nahradit výchozí aplikaci:
gitclone<your_repo_url> . - Aktivujte virtuální prostředí:
sourcevenv/bin/activate - Nainstalujte požadované balíčky:
pip install -r requirements.txt - Upravit
settings.py: nastavitALLOWED_HOSTSna vaši doménu/IP a zajistěteSTATIC_ROOTexistuje. - Migrace databáze:
python manage.py migrate - Shromažďujte statickou elektřinu do
STATIC_ROOT:python manage.py collectstatic --noinput - Restartujte Gunicorn, aby se změny projevily:
sudo systemctl restart gunicorn - Restartujte Nginx:
sudo systemctl restart nginx
6. Přístup k vaší aplikaci
Your Django app is available at: http://<server-ip
Nginx provádí reverzní proxy požadavků na Gunicorn prostřednictvím Unix socketu.
7. Změnit port nebo doménu?
Chcete-li upravit doménu, port nebo přidat SSL:
- Upravte konfiguraci webu Nginx:
sudo nano /etc/nginx/sites-available/gunicorn_django - Konfigurace testu:
sudo nginx -t - Znovu načíst Nginx:
sudo systemctl restart nginx
8. Povolte HTTPS (volitelné)
Použijte Certbot k povolení HTTPS.
Nainstalujte certbot:
sudo apt install certbot python3-certbot-nginx -y
Získejte certifikáty a automaticky aktualizujte Nginx:
sudo certbot --nginx -d example.com
Test:
nginx -t && sudo systemctl reload nginx