Prerequisites
- Windows Server 2019 Version 1809
- Internet access on the server
- Define the label for the OneList environment to be deployed. This is a short label, e.g. dev, qa, prod. The first letter must be unique in all the environments planned and it is used as the suffix of the database names.
- Use this value to replace the <environment> placeholder in the instructions below.
- Generate the Machine key for each environment. This is a Base64 string representing an array of 50 bytes.
- Use tools like https://generate.plus/en/base64 to generate a random string of the required length.
...
Install docker-compose
Run command:
Invoke-WebRequest "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-Windows-x86_64.exe" -UseBasicParsing -OutFile $Env:ProgramFiles\Docker\docker-compose.exe
...
Create a new folder. Name it as the <environment> value. Download and save docker-compose.yml and .env file to the folder.
Open the ".env" file in notepad and update the following fields with the actual value.
- RoleManager__MachineKey
The value is the generated machine key. - Database__ConnectionString
The value is the SQL Server connection string. The name of the databases will be automatically specified by the services. - ASPNETCORE_ENVIRONMENT
The value is <environment>. - Smtp__UserName
- Smtp__Password
- Smtp__From
This is the sender email address of notifications from OneList - Smtp__Host
This is the SMTP server OneList use to send notifications. - Smtp__Port
This is the port of SMTP server. - Smtp__UseSsl
Define if SMTP server uses SSL connection. For Office365 SMTP service, the value is always false.
Save the ".env" file then run the command below.
Start containers
Open PowerShell console from the folder created in previous step. Run following 3 commands.
...
Activate reverse proxy: Select IIS root → Open “Application Request Routing Cache” → Select “Server Proxy Settings” → Check the box “Enable Proxy”, uncheck "Reverse rewrite host in response headers" and click Apply
Add these server variables to URL Rewrite module: Select OneList site → Open URL Rewrite → Select "View Server Variables" → Add following variables: HTTP_X_Forwarded_Host, HTTP_X_Forwarded_Port, HTTP_X_Forwarded_Proto, HTTP_X_Original_URI.
...