Skip to main content
Star us on GitHub Star

Deploy the Console

This article is about deploying the console as a single-page application (SPA) embedded in the controller's API running in a container.

  1. Configure the controller

    The console's zac binding must be on the same web listener as the controller's management API, i.e., the edge-management binding.

          - binding: zac
    location: /ziti-console
    indexFile: index.html
    • location is the filesystem path to the static files of the console. In the controller container, the usual path is /ziti-console.
    • indexFile property is the entry point to the console.
  2. To apply the changes, the controller must be restarted.

  3. Visit the console at /zac/ on the controller's address.

    The console is now available at https://<fqdn>:<port>/zac/.

  4. Log in to the console.

    The only available authentication method for the console SPA is username and password.

  5. Console certificate option - The console is served from the controller's API and can be used with the default API certificate. The controller can be configured to present a different certificate for the console when the API is accessed by a distinct URL for the console. For more information about using alternative server certs with the controller, see: the configuration reference for the identity property.


You can mount a different version of the console on the controller container if you don't want to use the version that comes with it.

  1. On the Docker host, download the latest release of the console from GitHub. You can use any console version >= 3.0.0.

  2. Unzip the static files and set read and list permission.

    unzip -d ./ziti-console ./
    chmod -R a+rX ./ziti-console
  3. Mount the console directory on the controller container.

    - ./ziti-console:/ziti-console
  4. Restart the controller service to apply the changes.

    docker compose up ziti-controller --force-recreate