Last updated on July 7th, 2020
This topic describes how to deploy the PACS Storage Server and Medical Web Viewer to Microsoft Azure App Services. An app service is a Platform-as-a-Service (PaaS). Deploying the medical web viewer using App Services is not as straight-forward as deploying it to a virtual machine (VM). Nor do App Services provide as much control over the machine(s) hosting the services as Virtual Machines provide. However, managing App Services is easier when done through the Azure portal. For more information, refer to https://learn.microsoft.com/en-us/azure/architecture/guide/technology-choices/compute-decision-tree.
Perform the following steps to add a new, classic Storage account:
Now, use LEADTOOLS Storage Server to setup this cloud storage to be used for your patients/studies records:
Azure Cloud Storage
Run the "CSPacsDatabaseConfigDemo.exe" demo to install your database in Azure, for more information see: Creating a Microsoft Azure-hosted Database
<add key="lt.License" value="xR0M.......16cvBp0P8fYee"/>
[License] License = <doc><ver>2.0</ver><code>
) and (</code></doc>
)
Find the (local.config), search for (lt.Medical.Pacs.GlobalConfig) key, it should point to a valid GlobalPacs.config
Open that (GlobalPacs.config), search for (connectionStrings), find the configuration that has the name LeadStorageServer, (e.g.
<add name="LeadStorageServer21_64" connectionString="Data Source=(local);Failover Partner=;Initial Catalog=storage;Integrated Security=True;User ID=;Password=;Pooling=True"
providerName="System.Data.SqlClient" />
)
Copy this configuration, and paste it in the (connectionStrings.config) found in the project folder.
Go back to (local.config) and clear the value of (lt.Medical.Pacs.GlobalConfig) key
Easiest way to publish this web service is by using MS Visual Studio:
Create an ASP.NET web app in Azure
Alternatively, to do this manually, perform the following steps:
One of the pre-requisites is to install the LEADTOOLS setup, and configure the Medical Web Viewer. Files from the setup and configuration need to be copied over to the App Service's site. To do so, perform the following steps:
Copy the Service Binaries and Config/Definitions to the Azure App Service
Go to the web service folder on disk (for example, <installation>\Examples\Viewers\DotNet\MedicalWebViewer\Medical.WebViewer.Asp\Medical.WebViewer).
Copy the contents of this folder to the App Service’s (site/wwwroot/) using the FTP client.
Copy everything in the BIN folder except for the following files: Leadtools.Tasks.ServerProcess.exe
Note: The default platform is win32, so be sure you are copying the 32-bit binaries from the LEADTOOLS installation folder.
Note: Currently the free plan on Azure lets you deploy 32-bit web applications. To deploy 64-bit applications, from the Azure portal select the App Service and click Settings > Platform. Change the platform to 64-bits.
Create a new Folder called (App_Data) inside the (site/wwwroot/).
Copy the (PACS server folder). The default name is (L21_PACS_SCP32). It can be found on <installation>\bin\Dotnet4\Win32 if you are installing the win32.
From (site/wwwroot/), edit the local.config file as follows:
storageServerServicePath
> set to App_Data\L21_PACS_SCP32\
Caching.Enabled
> set to false
Caching.Lifetime
> set to 00:00:00
For more information about using the settings in the local.config file to manage caching, refer to Managing the Medical Web Viewer Custom Cache.
Add a new Web App. Azure portal > New > Compute > App Services > Web App
Name your Web App “MedicalViewer21”
Go to your new App Service > Overview, get the FTP , and make sure you get the FTP user name as well
Use your favorite FTP client (e.g., Windows Explorer) to browse to that site location
Navigate to site/wwwroot/
Once again it is necessary to copy files from the installed LEADTOOLS setup, and the configured Medical Web Viewer. Perform the following steps:
Copy the Service Binaries and Config/Definitions To do this, go to the web service folder on disk (e.g., (installation)\Examples\Viewers\DotNet\MedicalWebViewer\MedicalWebViewerDemo)
Copy the contents of this folder to the App Service’s (site/wwwroot/) using the FTP client.
Search for the tag <base href and make sure the value is set to empty/blank:
<base href="" />
From (site/wwwroot/), open the web.config file and change the value of the (serviceUrl) to point to the web service deployed on Azure. You can get the web service URL from the Azure portal.
Get the URL from the Azure portal and navigate to it using an internet browser. You should be able to login and use most of the functionality of the web viewer
You can use the Storage Server demo to browse and manage your data if you modify its globalPacs.config and advanced.config files the same way you modified them for the App Service (for win32 these files are found in the Bin\Dotnet4\Win32 & Bin\Dotnet4\Win32\L21_PACS_SCP32). Using the Storage Server demo is optional, but can be very helpful.
Because of the nature of the platform Azure service applications use, the following functionalities do not work:
Secondary Capture
Print to PDF with Annotations burned-in (realized)