System Configuration

JFrog Platform configuration files: system.yaml, artifactory.yaml, and access.yaml, covering their types, purposes, and locations.

JFrog Platform configuration files control how the platform and its products behave at runtime. Each file type serves a specific purpose and ships with your installation. Review the file types and their locations before configuring your system.

Configuration Versus Config Descriptor Files

Configuration files — files with yaml or .yml extensions — are installed with your system and come with pre-defined defaults. While you can leave these defaults in place, the YAML files also provide a rich array of configuration options for customizing your system.

Config descriptor files, which have an .xml extension, are system files that contain system definitions. For example, artifactory.config.xml contains the basic information about your system at install time. You can use this file to bootstrap another server by copying the system information to the additional server. The binarystore.xml contains the information about the filestore installed with your system.

Do not modify artifactory.config.xml directly. Errors in this file can cause the system to stop working properly.

system.yaml files

Each product in the JFrog Platform is installed with a system.yaml file, which is the main configuration file for that product, enabling you to set the main configurations you wish to apply. Each product also includes the following variations on the system.yaml file:

  • system.basic-template.yaml includes the most commonly used system configurations and is identical to the system.yaml after a fresh installation.
  • system.full-template.yaml includes a list of all available configurations.

One additional variation on the system.yaml file is the values.yaml file, which is specific to Helm installations. Unlike other installations, Helm chart configurations are made to the values.yaml and then applied to the system.yaml.

📘

Using the system.yaml File

By default, the system.yaml file applies the default settings included with a fresh installation. A double ## marks a comment or a note, while a single # indicates a parameter that the customer can customize.

Removing the single # makes the parameter active and sets it to the default value in the file. To change this value, enter a different value for the parameter.

Configuration YAML files

In addition to the system.yaml file, the JFrog Platform also includes configuration YAML files that are used to modify Access and the application configuration.

Configuration Files by Product

Artifactory

File Name

Description/Location

Reference

system.yaml

This is the main configuration file for JFrog Artifactory. It enables you to set the main configurations you wish to apply.

$JFROG_HOME/artifactory/var/etc

System YAML Configuration File

values.yaml

Configures JFrog Artifactory in Helm installations. Unlike other installations, Helm chart configurations are made to the values.yaml and then applied to the system.yaml.

configuration.yml

After configuring your YAML file with all the needed changes, apply them by sending a PATCH request to <host>:<port>/api/system/configuration.

Artifactory YAML Configuration

artifactory.config.import.yml

When Artifactory is bootstrapped for the first time, it stores a copy of its initial configuration under .../var/etc/artifactory/artifactory.config.<timestamp>.yml, regardless of whether it was bootstrapped using the Onboarding Wizard or a YAML configuration file.

To use this configuration to bootstrap additional Artifactory instances, copy the file into the new instance's .../var/etc/artifactory folder and rename it to artifactory.config.import.yml.

.../app/misc/artifactory.config.import.yml

Artifactory Bootstrap YAML File

binarystore.xml

Provides flexible filestore management capabilities. By modifying this file, you can implement a variety of storage configurations, including basic and customizable local and network-based file systems, cloud storage, and redundant storage.

$JFROG_HOME/artifactory/var/etc/artifactory

Configuring the Filestore

artifactory.config.xml

This global JFrog Artifactory file provides a default set of configuration parameters. Artifactory loads the file during initial startup, then renames it to artifactory.config.bootstrap.xml. From that point on, the configuration is stored internally in Artifactory's storage.

This ensures Artifactory's configuration and data are coherently stored in one place, making it easier to back up and move Artifactory when using direct database backups. On every startup, Artifactory also writes its current configuration as a backup.

.../var/etc/artifactory/artifactory.config.xml

Artifactory Configuration Descriptors

artifactory.xsd

Unlike the default artifactory.config.xml, which can be used as an example but does not contain all the fields, the artifactory.xsd file contains all the fields and descriptions available for JFrog Artifactory.

Artifactory Configuration XSD

Xray

File Name

Description/Location

Reference

system.yaml

This is the main configuration file for JFrog Xray, enabling you to set the main configurations you wish to apply.

$JFROG_HOME/xray/var/etc/

Xray System YAML

values.yaml

Configures JFrog Xray in Helm installations. Unlike other installations, Helm chart configurations are made to the values.yaml and then applied to the system.yaml.

Helm Charts for Advanced Users

Distribution

File Name

Description/Location

Used in...

system.yaml

This is the main configuration file for JFrog Distribution.

It enables you to set the main configurations you wish to apply.

Installing Distribution

Distribution System YAML

values.yaml

Configures JFrog Distribution in Helm installations.

Unlike other installations, Helm chart configurations are made to the values.yaml and then applied to the system.yaml.

Installing Distribution

Helm Charts for Advanced Users

distribution.config.yml

Offers an alternative way to specify initial settings for JFrog Distribution.

For a new installation, you can configure your basic initial setup through the filesystem before starting Distribution for the first time. Any edits apply to the whole Distribution cluster**.**

📘

Note

Modifying the Distribution configurations is an advanced feature. If done incorrectly, it may render the Distribution service in an undefined and unusable state. Because it is easy to overwrite configurations, back up the configuration before making any direct changes, and take great care when doing so.

$JFROG_HOME/distribution/var/etc/distribution/

Distribution Application Config YAML File

Access Configuration File

File Name

Description/Location

Used in...

access.config.yml

Access provides a flexible means of configuration using a simple YAML configuration file. You can make a single change at a time or multiple configuration changes as needed to create, update, and delete any elements in Access.

$JFROG_HOME/artifactory/var/etc/access

Access YAML Configuration