2 Lokální instalace pro vývoj
Web a celý kód je provozován a otestován na níže uvedených technologiích.
- IIS 8.5 (Windows Server R2 a Windows 8.1) a na IIS 10.0 (Windows Server 2016 a Windows 10)
- .NET Framework 4.7.2
- Microsoft SQL Server Express 2012 a vyšší, včetně jakékoliv vyšší edice, pravděpodobně postačí i MS SQL 2008 R2.
- Elastic 5.6.x (POZOR! verze 6.x a vyšší, ani starší verze Elasticu nejsou podporované)
- Couchbase Server 6.X Community/Enterprise
- všechny požadavky pro provoz
- doporučujeme Visual Studio 2017, verze 15.9.x a vyšší (libovolná edice). Instalujte minimálně
- .NET desktop development
- ASP.NET and web development
- .NET cross-platform development
- nainstalujte systémové IIS (doporučujeme vyvíjet proti IIS, nikoliv proti IIS Express)
Popisuje kroky, které je nutné udělat pro instalaci všech systémů třetích stran, aby mohl být Hlídač státu spuštěn.
Požadované systémy je možné rozdělit do dvou skupin: ty, které musí být nainstalovány lokalné a ostatní. Lokálně na počítači či serveru musí být nainstalován .NET Framework a také služba IIS, ve které poběží Hlídač státu.
Ostatní systémy mohou být nainstalovaná buď lokálně, vzdáleně na jiném serveru a nebo spuštěny v dockeru.
Pro lokální instalaci postupujte dle instalačního průvodce pro jednotlivé systémy.
Při instalaci MS SQL Serveru zadejte heslo pro uživatele sa
, kterého můžete použít pro přístup z Hlídače státu (tento postup doporučujeme pouze při instalaci na lokálním počítači).
Microsoft SQL Server, Elastic a Couchbase Server mohou být také spuštěny v dockeru bez nutnosti lokální instalace. Pro spuštění v dockeru je nutné mít v nastavení dockeru přiřazeno minimálně 8GB RAM. Doporučujeme také nasměrovat volumy jednotlivých instancí dockeru na pevné cesty na lokálním disku, aby data byla uložena a nebolo je nutné při každém spuštění opětovně importovat.
Jednotlivé servery je možné pustit v dockeru ručně pomocí následujících příkazů
Nastartuje Microsoft SQL Server a přiřadí uživateli sa
heslo silneHeslo123
. Data se budou ukládat do adresáře c:/Projects/HlidacStatu/data/mssql
, který musí před spuštěním existovat. Pokud chcete mít data uložena na jiném místě, přepište cestu v příkazu. Po spuštění bude server dostupný na portu 1433
.
docker run -d -p 1433:1433 -v c:/Projects/HlidacStatu/data/mssql:/var/opt/mssql -e ACCEPT_EULA=Y -e SA_PASSWORD=silneHeslo123 microsoft/mssql-server-linux:latest
Nastartuje Elasticsearch server v jednonodové konfiguraci. Data se budou ukládat do adresáře c:/Projects/HlidacStatu/data/elastic
, který musí před spuštěním existovat. Pokud chcete mít data uložena na jiném místě, přepište cestu v příkazu. Po spuštění bude server dostupný na portech 9200
a 9300
.
docker run -d -p 9200:9200 -p 9300:9300 -v c:/Projects/HlidacStatu/data/elastic:/usr/share/elasticsearch/data -e discovery.type=single-node elasticsearch:5.6
Nastartuje Couchbase Server. Data se budou ukládat do adresáře c:/Projects/HlidacStatu/data/couchdb
, který musí před spuštěním existovat. Pokud chcete mít data uložena na jiném místě, přepište cestu v příkazu. Po spuštění bude server dostupný na portech 8091
- 8094
a 11210
.
docker run -d -p 8091-8094:8091-8094 -p 11210:11210 -v c:/Projects/HlidacStatu/data/couchdb:/opt/couchbase/var couchbase/server
Případně je možné využít nástroje Docker Compose, který je součástí Docker Desktop na Windows a spustit vše najednou. K tomu je potřeba mít uloženu konfiguraci pro spouštěné dockery v souboru docker-compose.yml
a následně z příkazové řádky ve stejném adresáři zavolat příkaz docker-compose up
.
Definice souboru docker-compose.yml
je uložena v základní složce projektu. Pro úspěšné spuštění kontajnerů je nutné vytvořit pojmenované svazky pro jednotlivé servery. Jejich vytvoření se provede následujícími příkazy:
docker volume create --name=couchbase_data
docker volume create --name=mssql_data
docker volume create --name=elastic_data
Po spuštění se nastartují 3 kontajnery pojmenovane couchdb
, mssql
a elastic
. Datové složky jednotlivých serverů jsou namapovány na vytvořené svazky (docker volume), které zachovají jejich obsah i po ukončení spuštěných kontajnerů.