# Server na strategicou hru na SKSP2022 Velké poděkování patří Medvědovi a Jirkovi Setničkovi, jejichž kód vykrádám. ## Instalace vývojového prostředí python3 -m venv venv . venv/bin/activate pip install wheel pip install -c constraints.txt --editable . # vytvořit hra/config.py podle config.py.example # Jako admin postgresu psql postgres=# CREATE DATABASE ksp_strathra_devel WITH OWNER=$(UŽVATELSKÉ JMÉNO); # Naplníme databázi bin/db_init # Přístup do orgočásti webu bin/create_user --org root ./flask run # Po běžných úpravách není potřeba balíček přeinstalovávat ## Instalace na produkční server TODO: Upravit (momentálně pouze vykradeno) # Pro systém s jádrem < 5.4 zvýšit net.core.somaxconn (jako root) [ "`cat /proc/sys/net/core/somaxconn`" -lt 4096 ] && echo net.core.somaxconn=4096 >> /etc/sysctl.conf && sysctl -p # Založit účet (jako root) useradd -m -s /usr/bin/bash ksp-strathra-web # Založit databázi (jako správce PostgreSQL) psql -e -c 'CREATE ROLE ksp_strathra' psql -e -c 'CREATE ROLE "ksp-strathra-web" LOGIN' psql -e -c 'GRANT ksp_strathra TO "ksp-strathra-web"' # a případně dalším uživatelům psql -e -c 'CREATE DATABASE ksp_strathra_pub WITH OWNER=ksp_strathra' # Nastavit uživateli SSHčko (jako on) mkdir .ssh vi authorized_keys # Pushnout data (jako svůj uživatel v složce s README) bin/deploy # Nainstalovat venv python3 -m venv venv . venv/bin/activate pip install wheel pip install -c constraints.txt --editable . # Inicializovat databázi (už jako mo-web) bin/db_init # Pustit web uwsgi --http 127.0.0.1:8000 --master -p 4 -w hra.web:app ## Mražení závislostí pip freeze | grep -v '^hra=' >constraints.txt