Infrastructure Prerequisites
...
Environments | Web Server | SQL Server |
---|---|---|
Production |
|
|
Non-production |
|
|
- Determine the DNS for each OneList environment, e.g. onelist.company.com, onelist-dev.company.com, onelist-test.company.com;
- Configure reverse proxy to enable access to OneList URL's
- Enable outbound firewall rules for the Web Servers to the following destinations:
- Apple and Google messaging services to send mobile push notifications:
- http://gateway.push.apple.com on ports: 2195 and 2196;
- https://fcm.googleapis.com/fcm/send on ports: 443, 5228-5230;
- https://iqx.onelistapprovals.com to retrieve the current push notification certificates;
- iqxbusiness.azureacr.io to download the Docker images as required.
- Installing Docker Enterprise Engine:
- Apple and Google messaging services to send mobile push notifications:
- Provision SSL certificate:
Wildcard or site specific SSL certificate for each environment;
- Key size 2048 bits;
- Issued by public certificate authority;
- SMTP server connection detail and dedicated or shared email address for OneList.
Deployment Prerequisites
- Domain user account requirements:
- Local Administrator of the Web Server;
- Has VPN and RDP access to the Web 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.
- Request for login to IQX container registry;
- 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
...
- 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.
...
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
Configure URL Rewrite rules
...