Skip to main content

Enterprise IT

VIKTOR is a low-code application development platform based on Python. This guide outlines the prerequisites to use VIKTOR within an enterprise IT environment.

Device settings​

In order to develop applications on the VIKTOR platform the machine of a developer needs to meet the following requirements:

  • The machine runs a Windows or Linux operating system.
  • Python 3.10 - 3.14 (64-bit) is available or can be installed by the developer.
  • A code editor is available or can be installed by the developer.
  • The machine has internet access (TCP over port 443, TLS >= v1.2).

Network / proxy settings​

The CLI is used to connect local application code (hosted on the machine of the developer) to a cloud-based development environment. This requires an internet connection with network settings specified below.

Domains​

The following domains should be accessible on the machine of the developer in order to be able to use VIKTOR.

  • *.viktor.ai (viktor.ai and all of its subdomains)
  • *.amazonaws.com (all subdomains of amazonaws.com)

If you want to be more restrictive, it is possible be more selective on the allowed urls, note these domains are subject to change, so we strongly recommend to whitelist all subdomains of viktor.ai & amazonaws.com

Do replace <region> with one of eu1 for Frankfurt, ap1 for Australia, eu2 for London, us1 for the US.

Also do <company> with your viktor subdomain (e.g. acme for acme.viktor.ai).

  • addons.viktor.ai (used in environments in Frankfurt)

  • addons.<region>.viktor.ai (for the other regions)

  • api-<company>.viktor.ai (still used but deprecated, for environments in Frankfurt)

  • api-<company>.<region>.viktor.ai (still used but deprecated, for environments in other regions)

  • cloud.viktor.ai

  • community.viktor.ai

  • <company>.viktor.ai (for environments in Frankfurt, for example acme.viktor.ai)

  • <company>.<region>.viktor.ai (for environments in other regions, for example acme.eu2.viktor.ai)

  • connect.viktor.ai (deprecated, used in some environments in Frankfurt)

  • connect.<region>.viktor.ai

  • developers.viktor.ai (for environments in Frankfurt)

  • developers.<region>.viktor.ai (for environments in other regions)

  • docs.viktor.ai

  • errors.viktor.ai

  • sys.viktor.ai (for environments in Frankfurt)

  • sys.<region>.viktor.ai (for environments in other regions)

  • viktor.ai

  • viktor-storage.s3.amazonaws.com (still used but deprecated, for environments in Frankfurt)

  • viktor-storage-<region>.s3.amazonaws.com

  • viktor-system.s3.amazonaws.com

Furthermore, installation of third-party Python packages requires access to:

  • files.pythonhosted.org
  • pypi.org
  • pypi.python.org

SSL certificates​

If a proxy is configured in such a way that the SSL certification chain is modified by replacing the root CA's certificate by a self-signed certificate, the developer may run into SSL cert verification errors while either installing or running an app locally:

errors while installing the app

The VIKTOR CLI installs apps with pip and uv (Python package managers). Whether they trust the certificate of the proxy depends on the selected isolation mode:

pip and uv use the system certificate store of your computer, so installing works once your organization has added its root certificate to this store.

note

With Python versions older than 3.12.5, the first installation of an app can still fail with an SSL error, because the pip version that comes with Python may not use the system certificate store yet. In that case, install the app once with the root certificate of your organization. On Windows, you first need to export this certificate to a file:

  1. In the start menu, type "Manage user certificates" and open it.
  2. Go to Trusted Root Certification Authorities > Certificates and find the root certificate of your organization (ask your IT department which one).
  3. Right-click the certificate, choose All Tasks > Export..., select Base-64 encoded X.509 (.CER) and save it, e.g. as C:\certificates\organization-ca.cer.

Then run the installation with the path to the certificate:

viktor-cli install --env PIP_CERT=C:\certificates\organization-ca.cer

On Linux, use the path to the certificate file (in PEM format) instead, e.g. in /usr/local/share/ca-certificates/. Later installations of the app no longer need PIP_CERT, unless its venv folder is removed.

errors while running the app

By default Python's requests package does not use the system certificate store, but uses a bundled CA certificate store to establish secure connections. Because the certificate of the proxy is not present in the bundled CA certificate store an error will occur. VIKTOR automatically mounts the system certificates when making requests since SDK version v14.15.2. Therefore, the easiest solution is to develop apps using this version or higher.