Attention
Zercurity has been acquired by JumpCloud.
This documentation will no longer be maintained or updated. You can read more about the acquisition, or signup to JumpCloud today.
Windows Server¶
Zercurity is partially supported on Windows Server as support for running Linux containers on Windows is currently in preview.
Installing Docker¶
Note
You can keep things simple by installing Docker for Desktop https://docs.docker.com/docker-for-windows/install/ - however, you can use Windows containers which is under preview.
First, you’ll need to install Docker. Start an “elevated” PowerShell (run it as administrator). Search for PowerShell, right-click, and choose Run as administrator. When asked if you want to allow this app to make changes to your device, click Yes.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All -NoRestart
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Management-PowerShell -All -NoRestart
Enable-WindowsOptionalFeature -Online -FeatureName Containers -All -NoRestart
Get-VM WinContainerHost | Set-VMProcessor -ExposeVirtualizationExtensions $true
Install-Module DockerProvider -Force
Install-Package -Name Docker -ProviderName DockerProvider -RequiredVersion preview -Force
Restart-Computer -Force
Installing Docker Compose¶
In order to deploy Zercurity and keep it up-to-date Docker Compose is required. Start an “elevated” PowerShell (run it as administrator). Search for PowerShell, right-click, and choose Run as administrator. When asked if you want to allow this app to make changes to your device, click Yes.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Invoke-WebRequest "https://github.com/docker/compose/releases/download/1.25.3/docker-compose-Windows-x86_64.exe" -UseBasicParsing -OutFile $Env:ProgramFiles\Docker\docker-compose.exe
On Windows Server 2019, you can add the Compose executable to
$Env:ProgramFiles\Docker
. Because this directory is registered in
the system PATH
, you can run the docker-compose --version
command on the subsequent step with no additional configuration.
Downloading Zercurity¶
To setup Zercurity you’ll first need to download all the files cotained within our GitHub repository.
git clone https://github.com/zercurity/zercurity.git
Once the files have download you can then enter the newly created zercurity
folder.
cd zercurity/
Starting Zercurity¶
Before starting Zercurity you will need the Zercurity docker-compose.yml.
In the example below we will be using the domain name zercurity.local. Zercurity also requires SSL certificates in order to establish a secure connection between both clients and the server.
cd zercurity/
# Edit the production.env files in tihs new directory.
# Change zercurity.local for the domain you with to use.
$Env:ZERCURITY_DOMAIN = "zercurity.local"
# Start the containers. The output will also be logged.
docker-compose up
As the containers start (which will take a few minutes) you’ll notice two
directories being created, certs
and data
.
- The
certs
directory contains the SSL certificates for the NGINX web-server. - The
data
directory contains both a working directory for the creation of temp files and data for theprostgresql
database.
The Zercurity web application will now be available at:
https://app.zercurity.local
Warning
If you are using self-signed certificates you will need to manually visit
https://app.zercurity.local
, https://api.zercurity.local
and https://download.zercurity.local
in order for the web
application to work correctly. Or you can add the generated CA to your
preferred browser which can be found in the certs
folder.
Updating Zercurity¶
cd zercurity/
# Pull the latest images
docker-compose pull