Dodaj domenę w systemie MyDevil jako aplikację Python (jeśli jeszcze tego nie zrobiłeś):

devil www add wsi.dafr32.smallhost.pl python /usr/local/bin/python3 production

Domyślnie MyDevil utworzy katalog /home/TWÓJ_LOGIN/domains/TWOJA_DOMENA/public_python/ z podstawowymi plikami.

Przejdź do katalogu domeny i usuń domyślny folder public_python, aby móc sklonować tam swoje repozytorium:

cd ~/domains/TWOJA_DOMENA/
rm -rf public_python

Sklonuj swoje repozytorium z GitHuba jako public_python:

git clone git@github.com:TWÓJ_LOGIN/NAZWA_REPOZYTORIUM.git public_python

Wejdź do pobranego katalogu:

cd public_python
python3 --version

Stwórz nowe środowisko wirtualne i aktywuj je:

virtualenv venv -p python3.12
source venv/bin/activate

Zainstaluj zależności z pliku requirements.txt:

pip install --upgrade pip
pip install -r requirements.txt

Jeśli będzie problem z pillow, to zmień wersję w requirements.txt na 11.3.0

 

Skonfiguruj sekrety lokalnie (.env):
Ponieważ plik .env (lub local_settings.py) został pominięty przez .gitignore, musisz utworzyć go ręcznie na MyDevil i uzupełnić odpowiednimi hasłami do bazy danych oraz produkcyjnym kluczem SECRET_KEY:

Wygeneruj klucz

python3 -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
nano .env

przykładowa zawartość:

DJANGO_SECRET_KEY=wygenerowany_bardzo_dlugi_i_unikalny_klucz_dla_produkcji
DJANGO_DEBUG=False
DJANGO_ALLOWED_HOSTS=twojadomena.pl
#school_type opctions:  - lo, - sp
SCHOOL_TYPE=sp
ENABLED_APPS=overtime,rewards,exams,helpdesk,program,evaluation

Utwórz kolekcję staticfiles

python manage.py collectstatic --noinput

Utwórz bazę

python manage.py migrate

 

Spis treści: