Przygotowanie środowiska wirtualnego dla gotowej aplikacji Django

Czasem zdarza się, że dysponujemy gotową albo w jakimś tam stopniu ukończona aplikacją Django i musimy ją uruchomić w nowym środowisku. Dzieje się tak w co najmniej trzech przypadkach. Po pierwsze gdy swoją aplikację chcesz uruchomić na serwerze produkcyjnym. Po drugie kiedy zaczynasz współdzielić kod i ty albo twój współpracownik ma pobrać kod aplikacji z repozytorium Git i utworzyć dla niej lokalne środowisko wirtualne. Po trzecie kiedy potrzebujesz kopii aplikacji do testowania rożnych bibliotek i nie chcesz „bałaganić” w swoim środowisku, w bazie i w aplikacji nad którą pracujesz.

Tak czy siak załóżmy że masz kod aplikacja Django i potrzebujesz dla niej środowiska wirtualnego. Jest to w sumie niezbyt skomplikowane zagadnienie pod warunkiem, że system operacyjny nam tego nie utrudni z powodu jakiejś niezgodności bibliotek czy ich baku, ale to już inna kwestia.

Tworzenie takiego środowiska wirtualnego zaczynamy dokładnie tak samo jak to jest opisane we wszystkich tutorialach mówiących o tym jak w ogóle zacząć pracę z aplikacją Django. Jedyne na co trzeba zwrócić uwagę to wymuszenie odpowiedniej wersji Pythona (identycznej z oryginalnym środowiskiem). Ja swoim katalogu z projektami tworzonymi w Pythonie mam osobne katalogi dla wirtualnych środowisk, których nazwy zaczynają się od przedrostka ‚ven_‚ i osobne katalogi w których przechowuję same aplikacje, których nazwy zaczynają się od ‚app_‚. Lubię mieć porządek, ale każdy może mieć taki porządek jak jemu pasuje więc inna organizacja nie jest wykluczona.

Żeby zrobić to „po mojemu” przechodzę do katalogu z projektami Python:

$ cd /sciezka/do/projetow/Python

Tworzę katalog dla środowiska wirtualnego:

$ mkdir ven_nazwasrodowiska

Następnie tworzę środowisko środowisko wirtualne wskazując katalog w którym ma się znaleźć oraz wymuszając wybraną wersją pythona:

$ virtualenv ven_nazwasrodowiska -p python3.6

Jeśli wszystko przebiegło prawidłowo, należy uruchomić środowisko wirtualne.

$ source /sciezka/do/projetow/Python/ven_nazwasrodowiska/bin/activate

O powodzeniu świadczy zmiana znaku zachęty, który w tym wypadku będzie wyglądał następująco: (ven_nazwasrodowiska)$

Następnie Należy przejść do katalogu z kopią aplikacji Django (na przykład sklonowaną z Git) i uruchomić reqiurements.txt

(ven_nazwasrodowiska)$ pip install -r requirements.txt

Oczywiście jest kilka warunków:

  1. Mamy zainstalowany pip
  2. W pliku reqiurements.txt mamy listę wszystkich wymaganych przez aplikację pakietów
  3. Pakiety, które chcemy doinstalować w wybranej wersji nie kolidują z jakimiś pakietami znajdującymi się w systemie.

Oczywiście o tym wszystkim dowiemy się z komunikatów, szczególnie jeśli instalacja nie od razu się powiedzie.

Kiedy już uda się doprowadzić instalację reqiurements.txt do szczęśliwego końca, kiedy mamy odpowiednią kopię bazy danych i aplikacja ma skonfigurowane połączenie z nią (Ściąga z tworzenia i konfiguracji aplikacji), nie pozostaje nic innego jak ją uruchomić.

(ven_nazwasrodowiska)$ python manage.py runserver

Dodaj komentarz

%d bloggers like this: