Quick Start

To deploy GES with docker-compose on your server, you need:

  • Docker (and Docker Compose 2.0+).

  • Credentials for registry.gram.ax.

  • A license key.

Download

Download the files with: curl -o docker-compose.yaml https://gram.ax/enterprise-docker-compose.yaml -o .env https://gram.ax/enterprise.env.

Configuration

Before starting, set the following variables either via environment variables or in the .env file.

Main parameters

  • CLIENT_NAME — client login for Gramax Enterprise Server. Used for authentication in Docker Registry and when substituting values into configuration variables. Issued at purchase. Required. Example: gramax

  • GES_URL — URL where GES will be available. Required. Example: https://enterprise.gramax.local

  • AUTH_SERVICE_URL — URL where the auth service will be available. Example: https://ges.gram.ax/auth

  • DIAGRAM_RENDERER_SERVICE_URL — URL where the Diagram-renderer service will be available. Example: https://ges.gram.ax/diagram-renderer

  • ALLOWED_GRAMAX_URLS — URLs of Gramax instances (documentation portal, browser version, and GES), comma-separated. No trailing comma. Required. Example: https://some-instance.gram.ax,https://another-instance.gram.ax

  • LICENSE_KEY — license key for Gramax Enterprise Server. Issued at purchase. Required. Example: 765d562b9092eec3…

  • GIT_SERVER_TOKEN — access token for the Git server for reading/cloning repositories. Required. Example: glpat-...

  • GES_ADMIN_EMAILS — workspace owner emails, comma-separated. Written to config only on first startup. Required. Example: admin1@gramax.local,admin2@gramax.local

  • GIT_SERVER_URL — GitLab server address for external storage. Required. Example: https://gitlab.example.com

  • ENTERPRISE_STORAGE_TYPE — configuration storage type: gitlab or local. Required. Example: gitlab

  • ENTERPRISE_CONFIG_PATH — for ENTERPRISE_STORAGE_TYPE=local: path to the GES settings folder on the virtual machine. Required. Default: /app/config

  • GIT_PROJECT_PATH — for ENTERPRISE_STORAGE_TYPE=gitlab: path to the settings repository in GitLab, as group/repository-name. Must be created before initialization. Required. Example: dr/gramax-yaml-manager

  • GIT_PROJECT_BRANCH — branch of the GIT_PROJECT_PATH repository, if it differs from master. Default: master. Example: main

  • ENTERPRISE_SERVICE_ENCRYPTION_KEY — key for secure data transfer between services. Required. Example: 5caf59ed...cddb8489

  • COOKIE_SECRET — key for encrypting user secrets in cookies. Recommended: a 32-byte key (openssl rand -hex 32). Example: 397b6f3bf51a73b9...

Start

Container registry login

Before the first launch, authenticate in our image registry.

  1. On the deployment host, run:

    docker login registry.gram.ax
  2. Enter credentials:

    • Login: value of CLIENT_NAME

    • Password: token sent together with the license key

If credentials are correct, Docker returns a success message, for example: Login Succeeded

After setting environment variables, start GES with docker compose up -d.

Configuration files are created automatically on first start. Required parameters are taken from the .env file.

Update

To update GES, run docker compose up --pull=always.