Please enable JavaScript to view this site.

Version:

Navigation: Deployment

Deploy Network Locator Web Services

Prev Top Next More

Web Services

Create a YAML Configuration File

For the deployment of the web services, you need to prepare a YAML configuration file to tailor your Network Locator deployment to the specifics of you own environment.

Copy the below values.yaml file and save it to a local copy. Then adapt all the <VARIABLES> to match your environment.

Use a sufficiently long password for Keycloak PostgreSQL to prevent authentication failures due to password length restrictions.

values.yaml

global:
  ingressClassName: <INGRESS-CONTROLLER-CLASSNAME>
  tlsSecretName: <TLS-SECRET>
  arcgis:
    enterpriseUrl: <ENTERPRISE-BASE-URL>
    portalUrl: "{{ tpl .Values.global.arcgis.enterpriseUrl . }}/portal"
    serverUrl: "{{ tpl .Values.global.arcgis.enterpriseUrl . }}/server"
    webMapId: <WEBMAP-ID>
    # if portalSecretName is set, the portalUsername and portalPassword are ignored
    # kubectl create secret -n <NAMESPACE> generic <PORTAL-SECRET-NAME> --from-literal=username=<PORTAL-USER-NAME> --from-literal=password=<PORTAL-USER-NAME-PASSWORD>
    #portalSecretName: <PORTAL-SECRET-NAME>
    portalUsername: <PORTAL-USER-NAME>
    portalPassword: <PORTAL-USER-NAME-PASSWORD>
  hostname: <HOSTNAME-KUBERNETES-CLUSTER>
  cockpit:
    appUrl: <STUDIO-WEB-APP-COCKPIT-URL>
  landingPage:
    appUrl: <STUDIO-WEB-APP-LOCATOR-URL>
  mailer:
    # if secretName is set, the host, ssl, startTls, port, username, password and from are ignored
    # kubectl create secret -n <NAMESPACE> generic <MAILER-SECRET-NAME> --from-literal=host=<HOSTNAME-MAIL-SERVER> --from-literal=ssl=false --from-literal=start-tls=OPTIONAL --from-literal=start-tls-enabled=true --from-literal=port=587 --from-literal=username=<USERNAME-MAIL-SERVER> --from-literal=password="<PASSWORD-MAIL-SERVER>" --from-literal=from=<FROM-MAIL-ADDRESS>
    #secretName: <MAILER-SECRET-NAME>
    host: <HOSTNAME-MAIL-SERVER>
    ssl: false
    startTls: OPTIONAL
    port: 587
    username: <USERNAME-MAIL-SERVER>
    password: <PASSWORD-MAIL-SERVER>
    from: <FROM-MAIL-ADDRESS>
  registry:
    url: vertigisapps.azurecr.io
    # if secretName is set, the username and password are ignored
    # kubectl create secret -n <NAMESPACE> docker-registry <REGISTRY-SECRET-NAME> --docker-server=vertigisapps.azurecr.io --docker-username=<USER-NAME> --docker-password=<PASSWORD>
    # secretName: <REGISTRY-SECRET-NAME>
    username: <USER-NAME>
    password: <PASSWORD>
  kubernetesDashboard:
    enableDeployment: false
    restrictToNamespace: true
keycloak:
  image:
    registry: vertigisapps.azurecr.io
    # if global.registry.secretName is specified, set the name of the secret here, too
    # pullSecrets:
    #   - name: <REGISTRY-SECRET-NAME>
  ingress:
    ingressClassName: <INGRESS-CONTROLLER-CLASSNAME>
  auth:
    adminUser: <ADMIN-USERNAME>
    adminPassword: <ADMIN-PASSWORD>
    # instead of setting the adminPassword, a secret can be used
    # c.f. https://artifacthub.io/packages/helm/bitnami/keycloak#keycloak-parameters
    # kubectl create secret -n <NAMESPACE> generic <KEYCLOAK-ADMIN-PASSWORD-SECRET-NAME> --from-literal=<KEYCLOAK-ADMIN-PASSWORD-SECRET-KEY>=<ADMIN-PASSWORD>
    # existingSecret: <KEYCLOAK-ADMIN-PASSWORD-SECRET-NAME>
    # passwordSecretKey: <KEYCLOAK-ADMIN-PASSWORD-SECRET-KEY>
  postgresql:
    auth:
      username: <USERNAME>
      password: <PASSWORD>
      postgresPassword: <PASSWORD>
      # instead of setting the password and postgresPassword, a secret can be used
      # c.f. https://artifacthub.io/packages/helm/bitnami/keycloak#database-parameters
      # kubectl create secret -n <NAMESPACE> generic <KEYCLOAK-PG-SECRET-NAME> --from-literal=password=<PASSWORD> --from-literal=postgresql-password=<PASSWORD>
      # existingSecret: <KEYCLOAK-PG-SECRET-NAME>
# Kubernetes Dashboard configuration
kubernetes-dashboard:
  app:
    settings:
      global:
        defaultNamespace: <NAMESPACE>
        namespaceFallbackList:
          - <NAMESPACE>

Create Kubernetes Deployment

For the final deployment execute the following commands:

helm install
 <release-name>
 oci://vertigisapps.azurecr.io/network-locator/helm-chart
 --namespace <name of kubernetes namespace>
 -f values.yaml
 --wait  
 --version 1.4.0

This command may take up to five minutes to complete.

kubectl get pods -n <name of kubernetes namespace>

After executing this command, you should a screen similar to that in the figure below.

VNL_Get_Pods

You have now successfully deployed the Network Locator Web Services. You can now proceed with the configuration of the solution.

 

© 2025 VertiGIS North America Ltd. All Rights Reserved. | Privacy Center | Imprint
Documentation Version 1.5 (352ed89f)