Self-hosted Background Maps for Power BI

We are able to offer a self-hosted option for Icon Map background maps, which enables use of our background maps and icon library without the need for external internet access.

Contact sales@icon-map.com to discuss options for your organisation.

Installation

On purchasing the Icon Map background pack, you will be provided with a URL to download a ZIP file containing the resources to deploy. These instructions assume it will be deployed onto a server running IIS. This can be the same server that is running Power BI Report Server.

Web Server Configuration

Extract the IconMapLocal folder into your web server. Around 400 GB of disk space is required for all resources.

Static Content

The "Static Content" IIS feature will need to be enabled to provide support for HTTP Range headers. This can either be enabled using Server Manager -> Add Roles and Features -> Server Roles -> Web Server (IIS) -> Web Server -> Common HTTP Features -> Static Content.

It can also be enabled using the following PowerShell command:

Install-WindowsFeature -Name Web-Static-Content

web.config

Static file and CORS configuration will also likely be required in web.config. Configure web.config as follows:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <staticContent>
    <remove fileExtension=".pmtiles" />
      <mimeMap fileExtension=".pmtiles" mimeType="application/octet-stream" />
      <remove fileExtension=".pbf" />
      <mimeMap fileExtension=".pbf" mimeType="application/x-protobuf" />
      <remove fileExtension=".svg" />
      <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
      <remove fileExtension=".json" />
      <mimeMap fileExtension=".json" mimeType="application/json" />
    </staticContent>
    <httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
      </customHeaders>
    </httpProtocol>
  </system.webServer>
</configuration>

A "null" or "*" origin for CORS is required due to Microsoft's sandboxing of custom visuals.

Icon Map Configuration

To use the locally hosted maps, provide Icon Map with the URL where the resources are hosted.

In Icon Map's format pane, under Icon Map Slicer > Customization, enter your URL in the "Custom Styles URL" text box. For example:

http://powerbi.internal:8080/IconMapLocal/

You should ensure that you end the URL with a '/' character.

This setting can be set as a default property in your Power BI Report theme file.