Please enable JavaScript to view this site.

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>
  # ifportalSecretName 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:
  # ifsecretName 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<KEYLOCAK-PG-SECRET-NAME> --from-literal=password=<PASSWORD>--from-literal=postgresql-password=<PASSWORD>
    # existingSecret: <KEYLOCAK-PG-SECRET-NAME>
 
# Kubernetes Dashboard configuration
kubernetes-dashboard:
app:
  settings:
    global:
      defaultNamespace: <NAMESPACE>
      namespaceFallbackList:
      - <NAMESPACE>

CreateKubernetes 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 LocatorWeb Services. You can now proceed with the configuration of the solution.

 

© 2025 VertiGIS. All rights reserved. | Privacy Center | Imprint
Documentation Version 1.5 (cfa90193)