2 Lokální instalace pro vývoj - HlidacStatu/HlidacStatu GitHub Wiki
Technologie
Web a celý kód je provozován a otestován na níže uvedených technologiích.
Požadavky pro provoz:
- 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
Požadavky pro vývoj:
- 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)
Instalace
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).
V dockeru (Docker Desktop na Windows)
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.
Ruční spuštění
Jednotlivé servery je možné pustit v dockeru ručně pomocí následujících příkazů
- Microsoft SQL Server
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
- Elasticsearch
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
- Couchbase Server
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
Docker Compose
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ů.