💡: Vista Bridge is an API server for Viewpoint’s Vista on-premise application. It serves to give Aclaimant integrations access to our customers Vista instance by adding an API layer. It interacts directly with Vista’s underlying MSSQL database.
- Setting up Docker on Windows
- Updating Vista-Bridge Version
- Working with the Docker Container
- Post setup
Setting Up Docker on Windows:
Set Up Notes:
- Docker is required in order to run the vista bridge, Docker can be run on a Linux server or Windows server.
- A minimum Windows Server version of 1709 is required.
- The following instructions were tested on Windows Server 2019.
- Running Linux Containers on Windows (LCOW) is still considered experimental
- Docker requires Hyper-V to run on Windows. On a physical machine, this may require enabling virtualization in the BIOS. If running on a cloud provider like AWS/Azure, this will require specific instance types. On AWS, it requires a bare metal instance like i3.metal. On Azure look for HyperThreaded instances like D_v3, Ds_v3, E_v3, Es_v3, F2s_v2 - F72s_v2, M (subject to change, https://docs.microsoft.com/en-us/azure/virtual-machines/acu has more info)
Installation:
-
Log into your Windows instance with administrator credentials.
-
Launch Powershell.
-
Install Docker EE using DockerMsftProvider.
Install-Module "DockerMsftProvider" -Force Update-Module "DockerMsftProvider" Install-Package Docker -ProviderName "DockerMsftProvider" -Update -Force
-
Select Yes if prompted to install the NuGet Provider.
-
If needed, restart.
Restart-computer
-
Launch Powershell.
-
Enable Windows Containers Feature.
Install-WindowsFeature Containers
-
If needed, restart.
Restart-computer
-
Launch Powershell.
-
Enable Experimental Features.
Set-Content -Value "`{`"experimental`":true`}" -Path C:\\ProgramData\\docker\\config\\daemon.json
-
Restart Docker.
Restart-Service docker
-
Check Docker Info and verify Experimental is set to true.
docker info
-
LCOW Setup:
-
Create Folder C:\Program Files\Linux Containers
cd 'C:\\Program Files\\' mkdir "Linux Containers"
-
Download the latest release from https://github.com/linuxkit/lcow/releases
cd '.\\Linux Containers\\' curl -OutFile release.zip <https://github.com/linuxkit/lcow/releases/download/v4.14.35-v0.3.9/release.zip>
-
Expand Archive
Expand-Archive -DestinationPath . .\\release.zip
-
Delete release.zip
rm release.zip
-
Make sure Hyper-V is installed
Install-WindowsFeature Hyper-V –IncludeManagementTools –Restart
-
You may need to restart after Hyper-V installs. If so, log back in and launch Powershell.
-
Test docker on Linux.
docker run --rm -it --platform=linux busybox echo "LCOW on a Windows Server!"---
-
You should see LCOW on a Windows Server! If the above command is successful, you’re ready to install the Vista Bridge. If not, some docker troubleshooting will be required.
Configuration:
Environment Variables |
|||
Variable name | Required? | Default | Description |
|
true |
N/A |
The secret API Token that will be used by the Aclaimant system for authentication when making API calls |
|
true |
N/A |
Instance name, used for tagging of logs in LogDNA |
|
true |
N/A |
The database username used to access the Vista MSSQL instance |
|
true |
N/A |
Vista database password for given user |
|
true |
N/A |
Vista database host |
|
N/A |
1433 |
Vista database port |
|
true |
N/A |
Vista database dbname |
Loading and Running the Docker Image (Loading the Tar):
-
docker load -i aclaimant-vista-bridge-<version>.tar
Initial Run of the Docker Image:
-
To set the necessary environment variables you can put them in a file or instead use
-e ACL_VB_<env>=<value> -e ACL_VB_<env>=<value
-
Argument
-v
sets where on disk the search index is stored, useful for restarting and maintaining the index.
docker run -itd -p 80:80 -p 443:443 -v <folder-for-data-on-windows-server>:/usr/vista-bridge/data --name=aclaimant-bridge-<version> --env-file=<envfile> --restart unless-stopped aclaimant/vista-bridge:<version>
An example env-file minimally should look like:
ACL_VB_INSTANCE=<aclaimant’s-customer-company-name>
ACL_VB_API_TOKEN=<generated-secret-token>
ACL_VB_DB_USER=<VistaDB-User>
ACL_VB_DB_PASSWORD=<VistaDB-Password>
ACL_VB_DB_NAME=<VistaDB-Database-name>
ACL_VB_DB_HOST=<VistaDB-Host>
ACL_VB_DB_PORT=<VistaDB-Port>
Docker Image Notes:
-
-d
Runs this as a daemon -
--restart=unless-stopped
Will cause the container to start whenever docker restarts on the machines, unless the container had been stopped withdocker stop aclaimant-bridge-<version>
-
--name
is optional and can be anything; it's becomes useful for working with the instance -
sudo
may be required before alldocker
commands; especially if running on linux -
-p 443:443
Binds the docker image's port 443 to your local port 443 -
-p 80:80
Binds the docker image's port 80 to your local port 80
Updating Vista-Bridge Version:
-
Stop the previous version. Note: this uses the name from the currently running instance; you can see this with
docker ps
docker stop aclaimant-bridge-<old-version>
-
Start the new version
-
This will be the same argument you use in Initial run of the Docker image, just with the latest version for
<version>
-
Working with the Docker Container:
-
Viewing logs
docker logs -t aclaimant-bridge
-
Stopping instance
docker stop aclaimant-bridge
-
Re-starting the instance
docker start aclaimant-bridge
Note: The aclaimant-bridge
is the --name
from the initial run command above. Feel free to change it in all places.
Post Setup:
-
Aclaimant and customer will both need the API token in order for the servers to communicate.
-
Aclaimant will need the IP of the customer's server.
-
Aclaimant will create a DNS record on our side in order to communicate with this server.
-
Comments
Please sign in to leave a comment.