Skip to content

Návod na inštaláciu

Roman Hudec edited this page May 9, 2020 · 47 revisions

Návod

Prerekvizity

  • git (duh)
  • Docker
    • Rozcestník návodov na inštaláciu: https://docs.docker.com/engine/install/
    • Ak mám príliš nový Linux a ešte nie sú oficiálne balíčky, skúsim z repozitárov (napr. Ubuntu 20.04 má sudo apt install docker.io).
    • Ak mám Windows Home alebo z nejakého dôvodu nechcem Docker for Windows, môžem skúsiť Docker Toolbox ale nemusí mi všetko fungovať.
    • Na linuxe sa chcem pridať do group docker aby som nemusel používať sudo.
    • Ak sa docker nezapne sám, skúsim ho zapnúť manuálne, ak netuším ako, reštartujem svoj počítač.
    • Ak mám príliš starý Docker, nemusí fungovať, chcem aspoň verziu 19.03
  • docker-compose

Inštalácia

  1. Nekopírujem commandy bezhlavo, čítam ktoré commandy musím pustiť podľa situácie v ktorej som.
  2. git clone [email protected]:trojsten/web && cd web
  3. docker-compose build - Pri každej inštalácii alebo update chceme vybuildiť nové image.
  4. Obnovenie DB z dumpu
    • (ak mám existujúcu starú DB a chcem loadnúť dump, najskôr ju zahodím) docker-compose down -v
    • (ak mám prístup k DB serveru) spravím si najnovší dump produkčnej DB pomocou pg_dump -U trojstenweb -W -Fc -O trojstenweb > trojstenweb.sql a stiahnem si ho k sebe do foldra s trojstenwebom
    • (ak nemám prístup k DB serveru) zoženiem si dump na slacku alebo sa rozhodnem začať s čistou DB a pokračujem krokom 4.
    • naštartujem lokálny postgres: docker-compose up -d db
    • Loadnem DB docker-compose exec -T db pg_restore --no-owner -U trojsten -d trojsten < trojstenweb.sql. (Staré dumpy môžu vypľuť veľa errorov, nové dumpy by mali vypľuť 2, nezľaknem sa, pomoc hľadám až keď niečo ďalej nebude fungovať ako má...)
  5. docker-compose run --rm web python manage.py migrate = updatne DB na najnovší formát, púšťam vždy po inštalácii alebo update.
  6. (ak neviem heslo na žiadneho superusera, alebo začínam s čistou DB) Vytvorím si superusera: docker-compose run --rm web python manage.py createsuperuser
  7. (ak začínam s čistou DB) docker-compose run --rm web python manage.py loaddata trojsten/fixtures/*.json
  8. docker-compose up = spustím trojstenweb
  9. skúsim otvoriť http://localhost:8000/ a prihlásiť sa či všetko beží ako má. (ak používam Docker Toolbox, nemusí to byť na localhoste, viac informácií vie dať docker-machine ip default)

Staré návody

Ak z nejakého dôvodu chcem vidieť staré verzie tohto návodu (napr sa snažím rozbehať si trojstenweb bez dockeru), viem ich nájsť v histórii tejto stránky