System YAML Reference

Reference system.yaml format: key-entity structure, configuration hierarchy, and how to apply changes across JFrog services.

YAML File Format

The YAML file is constructed with keys and entities using the following format:

key: [entity]

For example:

YAML File FormatconfigVersion: 1
...
# common database used by all mission_control services
shared:
  database:
    type: postgresql
    host: localhost
    port: 5432
    name: mission_control
    ...
  ...
...

Configuration Value Hierarchy

Configuration values are applied according to the following hierarchy:

  1. Environment variables (.env file for Docker and Docker Compose).

    If no variables are set, the next level applies.

  2. system.yaml service section

    If nothing is found there, the next level applies.

  3. system.yaml shared section

    If nothing is found there, the next level applies.

  4. Application defaults.

If you do not set any values in any of the files above, the application uses its default settings.

📘

Note

The system yaml templates (system.full-template.yaml) represent the default value as they are configured in the application.

Applying Configuration Changes

After configuring your YAML file with all the needed changes, apply them by restarting the server.

📘

Take care when modifying Artifactory configurations

Modifying the system configurations is an advanced feature. Because it is easy to overwrite configurations, back up the configuration before making any direct changes, and take great care when doing so.

Shared Configuration Versus Operation Microservices

Each product in the JFrog Platform has its own system.yaml file for configuring its behavior. Each YAML file includes both shared configurations — which apply to all JFrog Platform products — and dedicated operational microservices configurations, which are relevant only to that specific product.