System Requirements

JFrog Installation & Setup Documentation

ft:sourceType
Paligo

This page outlines the system requirements for setting up and running the JFrog product servers for each product, including:

  • Recommended and required hardware

  • Supported platforms

  • Network requirements

  • Java requirements

  • Supported browsers

Separate server for each component

Run each JFrog product on its own separate server with no other software running to alleviate performance bottlenecks, avoid port conflicts, and avoid setting uncommon configurations.

JFrog Platform requires filestore and database services.

  • The filestore where binaries are physically stored.

  • The database that maps a file’s checksum to its physical storage, and many operations on files within repositories are implemented as transactions in the database.

Reserving Ports for Services

As JFrog adds additional services to the JFrog Platform portfolio, there is a need to "reserve" ports for the Platform to ensure that the service works properly. To this end, JFrog recommends reserving ports 8000-8100 (this is addition to the existing internal ports documented below).

Requirements Matrix

The following table describes what is required for each single-service node. In a high availability configuration, a single-service node represents each of the HA server instances.

Note

SLES 12 SP5 supports Docker Compose installation for all products except for Pipelines.

Product

Debian

Centos*

RHEL

Ubuntu

Windows Server

Helm Charts

SLES

Artifactory

10.x, 11.x

7.x

7.x, 8.x

18.04, 20.04, 22.04

2016 or 2019

3.x

12 SP5

Insight

10.x, 11.x

7.x

7.x, 8.x

18.04, 20.04, 22.04

(error)

3.x

12 SP5

Xray

10.x, 11.x

7.x

7.x, 8.x

18.04, 20.04, 22.04

(error)

3.x

(error)

Distribution

10.x, 11.x

7.x

7.x, 8.x

18.04, 20.04, 22.04

(error)

3.x

(error)

Pipelines

(error)

7.x

7.x, 8.x

18.04, 20.04, 22.04

Build nodes only

3.x

(error)

Breaking Change Affecting RPM/Yum/Linux Archive Installations on Centos 7.x*

As part of our commitment to our customers to maintain the security and reliability of your JFrog Platform, from Artifactory version v7.43.x, JFrog Artifactory will officially run with JDK 17 and Tomcat 9.x on all installation types. Note that JDK 17 and Tomcat 9.x are not supported on all Centos 7.x versions.

CentOS 8.x Support

CentOS 8.x reached its end-of-life in December 2021. CentOS 8.x support for JFrog products has been deprecated by the end of June 2022.

ARM64 Support

From version 7.41.4, Artifactory supports installation on ARM64 architecture through Helm and Docker installations. You must set up an external database as the Artifactory database since Artifactory does not support the bundled database with the ARM64 installation. Artifactory installation pulls the ARM64 image automatically when you run the Helm or Docker installation on the ARM64 platform.

ARM64 support is also available for Xray and Insight. ARM64 support is not available for Pipelines.

Network

Artifactory, Xray, and other JFrog products all need to be set with static IP addresses. These services also need to be able to communicate directly with each other over the same LAN connection. Hosting these services in geographically distant locations may cause health checks to temporarily fail. Ensure the ports are open and no firewalls block communications between these services.

Java

Java-based products (Artifactory, Distribution, Insight, Mission Control) must run with JDK 17+.TheJDK is already bundled into the applications.

  • From Distribution 2.13.2, the required JDK version is JDK 17.

  • From Artifactory 7.43.x, the supported JDK version will be JDK 17, which will be bundled into Artifactory.

JDK 11 is no longer supported.

JVM Memory Allocation

While not a strict requirement, we recommend that you modify the JVM memory parameters used to run Artifactory.

You should reserve at least 512MB for Artifactory. The larger your repository or number of concurrent users, the larger you need to make the -Xms and -Xmx values accordingly.

Set your JVM parameters in the system.yaml configuration file.

Configuring the JVM parameters

shared:
  extraJavaOpts: "-Xms512m -Xmx2g"

System Time Synchronization

The JFrog Platform requires time synchronization between all JFrog services within the same Platform.

Unsynchronised services may cause issues during authentication and token verification.

Browsers

Artifactory has been tested with the latest versions of:

  • Chrome

  • Firefox

  • Safari (for Mac)

  • Edge (Chromium-based versions)

For Docker and Docker Compose installations, JFrog services require Docker v18 and above (for Pipelines 18.09 and above) and Docker Compose v1.24 and up to be installed on the machine on which you want to run on.

For install instructions, refer to the Docker and the Docker Compose documentation.

For Helm Charts installations, JFrog services requires the following prerequisites/requirements:

  • Kubernetes 1.12+ (for installation instructions, see Kubernetes installation)

  • Kubernetes cluster with:

    • Dynamic storage provisioning enabled

    • Default StorageClass set to persistent storage

  • Kubectl installed and set up to use the cluster

  • Helm v3 installed

JFrog validates compatibility with the core Kubernetes distribution. Since Kubernetes distribution vendors may apply additional logic or hardening (for example, OpenShift and Rancher) JFrog Platform deployment with such platform vendors might not be fully supported.