Install the JFrog Platform using Helm Chart
Post-install configuration for the JFrog Platform Helm chart: license installation, enabling products, product configuration, and external PostgreSQL.
This page covers post-install configuration for the JFrog Platform Helm chart. If you haven't installed yet, start with the Helm Quick Start.
For license requirements by product combination, see the License Matrix.
Install the License
Choose one of these methods to install the JFrog Platform license. Use only one method — switching methods while the cluster is running may disable the Artifactory HA cluster:
- Artifactory UI (recommended) — once the primary cluster is running, insert licenses via the UI.
- REST API — use the Install License API.
- Kubernetes Secret — create a Secret from a license file, or embed it inline in the Helm release. Applies to initial deployment only.
Add Licenses
To activate Artifactory HA, install an appropriate license.
Specify multiple licenses
Whether in the Artifactory UI, using the REST API, or in the
artifactory.cluster.licensesection, ensure that the licenses are separated by a newline.
Warning
Use only one of these methods. Switching between them while a cluster is running might disable your Artifactory HA cluster.
Select a method below for step-by-step instructions.
Once the primary cluster is running, open the Artifactory UI and insert the license(s).
Enter all licenses at once, each separated by a newline. Adding them one at a time can redirect you to an unlicensed node where the UI won't load.
This method applies to initial deployment only — once Artifactory is deployed, update the license via the UI or REST API.
Enable Additional Products
The JFrog Platform Helm chart lets you enable or disable products after your initial install using a custom-values.yaml file and a helm upgrade command.
For example:
-
To deploy Xray, create a
custom-values.yamlfile with the following content.xray: enabled: true -
Run the upgrade command.
helm upgrade --install jfrog-platform --namespace jfrog-platform --create-namespace jfrog/jfrog-platform -f custom-values.yaml -
Configure each JFrog product separately with the following steps:
-
Copy the configurations to update from the main
values.yamlinto acustom-values.yamlfile. -
Set your custom values in
custom-values.yaml.Any values not present in
custom-values.yamlfall back to the defaults in the mainvalues.yaml. -
Run the upgrade command.
helm upgrade --install jfrog-platform --namespace jfrog-platform --create-namespace jfrog/jfrog-platform -f custom-values.yaml
-
Note
If you install Xray with the JFrog Platform charts, the RabbitMQ vhost is named "xray". The standalone Xray Helm chart sets "/" as the RabbitMQ vhost.
JFrog Platform Product Configuration
Apply any of the following configurations after installation:
System YAML Configuration File
Configure all system settings using the system.yaml file located in the $JFROG_HOME/artifactory/var/etc folder. For more information, see System Configuration. If you don't have a System YAML file in your folder, copy the template available in the folder and name it system.yaml.
Note
Unlike other installations, Helm chart configurations are made to the
values.yamland are then applied to thesystem.yaml.To apply configuration changes:
Make the changes to
values.yaml.Run the following command.
helm upgrade --install <jfrog product> --namespace <jfrog product> -f values.yaml
Database
The JFrog Platform Helm chart includes a bundled PostgreSQL database for evaluation use. The bundled database is not suitable for production — configure an alternate supported database before deploying.
Customize Java Opts (Optional)
Set JVM parameters using the artifactory.extraJavaOpts property in $JFROG_HOME/artifactory/var/etc/system.yaml. Set Java memory parameters as follows:
Scale -Xms and -Xmx with repository size and concurrent user count. With at least 512 MB reserved for Artifactory, the recommended minimal values are:
-server -Xms512m -Xmx2g -Xss256k -XX:+UseG1GC
For more recommendations about your hardware configuration, especially the -Xmx parameter, see System Requirements.
Additional Settings
Use additional settings to customize ports, join keys, and master keys. See joinKey (join.key) and masterKey (master.key).
Configure Filestore
By default, Artifactory uses the local file system for storage. It supports additional filestore configurations for cloud storage, custom binary providers, and redundancy.
Use an External PostgreSQL Database in the JFrog Platform Installation
Configure the JFrog Platform to use an external PostgreSQL database instead of the bundled PostgreSQL database.
Create a values-external-postgresql.yaml file with the following YAML configuration.
global:
database:
initDBCreation: false
postgresql:
enabled: false
artifactory:
database:
type: postgresql
driver: org.postgresql.Driver
url: 'jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/${ARTIFACTORY_DATABASE}'
user: ${ARTIFACTORY_DATABASE_USER}
password: ${ARTIFACTORY_DATABASE_PASSWORD}
xray:
database:
url: 'postgres://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/${XRAY_DATABASE}?sslmode=disable'
user: ${XRAY_DATABASE_USER}
password: ${XRAY_DATABASE_PASSWORD}
distribution:
database:
url: 'jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/${DISTRIBUTION_DATABASE}?sslmode=disable'
user: ${DISTRIBUTION_DATABASE_USER}
password: ${DISTRIBUTION_DATABASE_PASSWORD}Set postgresql.enabled=false in the YAML file and provide the external database details. Create the database and users before running the Helm install or upgrade command.
For more information, see Using an External Database.
Access Logs
List pods to find the pod name:
kubectl --namespace <your namespace> get podsStream container logs:
kubectl --namespace <your namespace> logs -f <name of the pod> -c <name of the container>Frequently Asked Questions
❓ What is the recommended method for installing a JFrog Platform license via Helm?
A: The Artifactory UI is the recommended method. Once the primary cluster is running, open the Artifactory UI and insert all licenses at once, separated by newlines. The REST API and Kubernetes Secret methods are also supported but must not be mixed with the UI method on the same cluster.
❓ Can I switch license installation methods after deploying?
A: No. Use only one method per cluster. Switching between the Artifactory UI, REST API, and Kubernetes Secret while the cluster is running may disable the Artifactory HA cluster.
❓ How do I enable JFrog Xray after a JFrog Platform Helm installation?
A: Create a custom-values.yaml containing xray: enabled: true and run helm upgrade --install jfrog-platform jfrog/jfrog-platform --namespace jfrog-platform --create-namespace -f custom-values.yaml.
Updated 17 days ago
