Tato sekce popisuje lokální spuštění aplikace na OS Ubuntu 20.04 LTS (Desktop). Předpokládá se, že je na systému nainstalovaný Python ve verzi 3.8.
Jako první krok doporučuji vytvořit virtuální prostředí, ale není to nezbytně nutné. Vytvořit a používat virtuální prostředí lze prostřednictvím standardního Python modulu venv, který je součásti instalace jazyka Python nebo s pomocí nástroje virtualenv.
- Zkopírujte obsah adresáře src do libovolné složky a otevřete ji v příkazové řádce.
- Aktivujte virtualní prostředí (pokud jste se rozhodli jej vytvořit).
- Nainstalujte závislosti společné pro všechna prostředí zadáním příkazu
pip install -r requirements/base.txt
. - Nainstalujte zbývající závislosti zadáním příkazu
pip install -r requirements/dev.txt
. - Aplikujte migrace databáze příkazem
python manage.py migrate --settings=bp.settings.local
.- V rámci migrací je vytvořen účet super uživatele admin@sportdiag.cz. Heslo je k dispozici v souboru .env pod klíčem DJANGO_SUPERUSER_PASSWORD. Pod tímto účtem lze přistupovat na adresu localhost:8000/admin.
- Při migraci jsou v databázi vytvořeni demo uživatelé a v aktuálním adresáři by se měly objevit soubory approved_fake_psychologists_raw_passwords.txt, fake_researchers_raw_passwords.txt a demo_clients_raw_passwords.txt. V těch naleznete přístupové údaje k jednotlivým účtům. Klientů i psychologů je vytvořeno více, ale všichni klienti s přístupy v souboru demo_clients_raw_passwords.txt jsou spárováni s testovacím účtem psychologa psycholog@example.com. V souboru approved_fake_psychologists_raw_passwords.txt jsou přístupy pouze k účtům schválených výzkumníkem-administrátorem (jsou aktivní a lze se k nim přihlásit).
- Spusťte lokální server příkazem
python manage.py runserver --settings=bp.settings.local
. - Aplikace je nyní dostupná v prohlížeči na adrese localhost:8000.
Tato sekce popisuje nasazení aplikace na server (virtuální stroj) s OS Ubuntu Server 20.04.3 LTS a hardwarovou konfigurací: 2 jádra CPU, 2 GB RAM a 20 GB diskového prostoru. O zajištění serveru pro účely testování aplikace jsem požádal správce sítě PřF UPOL.
Předpokládám, že čtenáři tohoto dokumentu nečiní potíže připojit se na vzdálený server pomocí ssh a za výchozí situaci považuji, že je čtenář k serveru připojený a má případně k dispozici otevřenou další příkazovou řádku na svém lokálním počítači.
- Prvním krokem pro úspěšné nasazení je mít na serveru nainstalovaný Docker. Toho lze docílit podle oficiálních instrukcí.
- Když máme Docker nainstalovaný, je potřeba dostat obsah adresáře src na server. V příkazové řádce lokálního počítače otevřeme adresář, ve kterém se nachází adresář src.
- Použijeme nástroj scp ke zkopírování obsahu adresáře z lokálního počítače na server např.
takto:
scp -r /local/directory remote_username@10.10.0.2:/remote/directory
viz. zde. V mém konkrétním případě měl příkaz podobuscp -r ./src sandja00@158.194.92.116:~/
. Po zadání příkazu je nutné zadat heslo pro připojení k serveru. - Po předchozím kroku bychom již měli na serveru mít adresář src (nebo jiný, pokud jsme zvolili jiný název) včetně
jeho obsahu. Nyní se stačí navigovat dovnitř adresáře a zadat
příkaz
docker-compose -f docker-compose.prod.yml up -d
. Pokud se jedná o první provedení příkazu, může chvíli trvat, než se kontejnery vytvoří. - Příkazem
docker ps
můžeme zkontrolovat, že kontejnery běží. Měly by být tři, v mém příapadě s názvy " src_nginx_1", "src_sportdiag_web_app_1" a "src_db_1". Názvy se však mohou drobně lišit. - Aplikace je nyní dostupná na adrese serveru. V mém případě na IP adrese 158.194.92.116 (protokol HTTP, je tedy třeba explicitně zadat http://158.194.92.116/).