Install Artifactory on Debian
Install Artifactory on Debian-based Linux using APT for single-node and HA deployments.
Installing Artifactory on Debian, for a single-node or High Availability (HA) setup, is a native installation: you install Artifactory directly with the operating system's package management tools, Advanced Package Tool (APT) and dpkg.
The steps below cover single-node and HA installations of JFrog Artifactory on a Debian system.
Prerequisites
Complete the common prerequisites before you begin. In summary:
-
Confirm your OS is a JFrog-supported OS.
-
Before installing, run a preflight check using the
diagnosticUtilutility to confirm your VMs meet the minimum resource requirements. -
Configure your network to meet JFrog's network requirements.
-
For additional prerequisites such as Java requirements and supported browsers, see:
Install Artifactory Debian Package
Run these steps with sudo privileges or as the root user, because they change system files and install packages.
These steps cover both single-node and HA installations.
-
Set
JFROG_HOMEVariableFor Debian, Artifactory installs and stores its data by default in
/opt/jfrog. To refer to this path in your terminal, run the following command:export JFROG_HOME=/opt/jfrogFor more information, see JFrog Product Directory Structure.
-
Configure JFrog APT Repository and Install Artifactory
This is the recommended method for installing Artifactory, as it simplifies updates.
-
Determine Your Debian Distribution:
Run one of the following commands to find your Debian distribution code name (for example,
buster,bullseye,bookworm):lsb_release -c # OR cat /etc/os-release -
Add JFrog APT Repository:
Replace
{distribution}with the output from the previous step (for example,xenial).echo "deb https://releases.jfrog.io/artifactory/artifactory-pro-debs {distribution} main" | sudo tee -a /etc/apt/sources.list -
Add JFrog Public Key:
This step verifies the authenticity of the packages.
wget -qO - https://releases.jfrog.io/artifactory/api/v2/repositories/artifactory-pro-debs/keyPairs/primary/public | sudo apt-key add - -
Update APT Cache and Install Artifactory:
First, verify that
net-toolsis installed. Then, update your package list and install Artifactory. Replace7.161.15with your desired Artifactory version.sudo apt-get install -y net-tools sudo apt-get update && sudo apt-get install jfrog-artifactory-pro=7.161.15
-
-
Use
.debPackage to Download and Install Artifactory (Optional)This method allows you to download and install a specific
.debpackage directly, which is an optional alternative.-
Download Artifactory Debian Package:
Download the specific Artifactory Debian package you wish to install. To download a specific version, replace
[RELEASE]with the exact version number (for example,7.161.15) in the command below:# Example for Artifactory Pro curl -g -L -O -J 'https://releases.jfrog.io/artifactory/artifactory-pro-debs/pool/jfrog-artifactory-pro/jfrog-artifactory-pro-[RELEASE].deb' # For example, to download Artifactory Pro 7.161.15 curl -g -L -O -J 'https://releases.jfrog.io/artifactory/artifactory-pro-debs/pool/jfrog-artifactory-pro/jfrog-artifactory-pro-7.161.15.deb' -
Ensure
net-toolsis Installed:sudo apt-get install -y net-tools -
Install
.debPackage:Navigate to the directory where you downloaded the
.debpackage and install it usingdpkgwith root user privileges.# Example for Artifactory Pro sudo dpkg -i jfrog-artifactory-<pro|oss|cpp-ce>-<VERSION>.deb # For example, to install Artifactory Pro 7.161.15 sudo dpkg -i jfrog-artifactory-pro-7.161.15.deb
-
-
Set up Artifactory Database
Artifactory requires an external database for production. JFrog highly recommends using PostgreSQL for all products in the JFrog Platform, although Artifactory supports additional databases. For more information, see Database Configuration.
-
Configure Artifactory to Use PostgreSQL:
On each Artifactory node, edit
$JFROG_HOME/artifactory/var/etc/system.yamlto point Artifactory to your external database.shared: database: type: postgresql driver: org.postgresql.Driver url: jdbc:postgresql://<DB_SERVER_IP_OR_HOSTNAME>:5432/artifactory_db username: artifactory_user password: your_secure_passwordThe database configuration in
system.yamlmust be identical on all Artifactory nodes, and all nodes must have reliable network access to the single shared external database instance. -
Configure Other Supported Databases (Optional):
To use databases other than PostgreSQL, set
shared.database.allowNonPostgresqltotruein yoursystem.yamland configure the database details. The following is an example for MySQL:shared: database: allowNonPostgresql: true type: mysql driver: com.mysql.jdbc.Driver url: jdbc:mysql://<your db url, for example: localhost:3306>/artdb?characterEncoding=UTF-8&elideSetAutoCommits=true&useSSL=false username: artifactory password: password
For more information about creating and configuring databases, see Set up Database.
-
-
Set up Supported Filestores
The filestore is where Artifactory physically stores the binaries.
- Single-Node: A local filesystem is the default, but externalizing it (for example, to a dedicated volume) is recommended for easier management and potential migration.
- High Availability (HA): A shared filestore is mandatory. This can be NFS, S3, Azure Blob Storage, Google Cloud Storage, or another supported object storage solution. All Artifactory nodes in the cluster must have unified and reliable network access to this single shared filestore.
For more information about configuring filestores, see Set up Filestore.
-
Start the First Artifactory Node
For Single-Node and HA: Start the first Artifactory service. This initializes the database and, for HA setups, generates the
master.key.sudo systemctl start artifactory.service -
Initial HA Setup and Licensing
After the first node is running, complete the initial setup and apply licenses. For HA installations, you must enable HA on the first node before you can add licenses for additional nodes.
-
Access the Artifactory UI: Open your browser and go to
http://<SERVER_HOSTNAME>:8082/, replacing<SERVER_HOSTNAME>with your server's actual IP address or host name. -
Complete the Onboarding Wizard:
- Change Default Admin Password: The default credentials are admin/password. Change this immediately.
- Configure Base URL: Configure the Base URL.
- Apply Your First License: Apply the license key for the first Artifactory node.
-
Enable HA on the First Node (HA only): Edit
$JFROG_HOME/artifactory/var/etc/system.yamlon the first node and add the HA configuration:shared: node: haEnabled: true taskAffinity: anyRestart the first node for the changes to take effect:
sudo systemctl restart artifactory.service -
Apply Remaining Cluster Licenses (HA only): After HA is enabled and the first node has restarted, navigate to Administration > Licenses in the Artifactory UI and add the license keys for all remaining nodes in your cluster.
-
Warning
If you are setting up an HA cluster, apply licenses for all nodes through the first node's UI before starting any additional nodes. If you start new nodes before applying their licenses, the front-end microservices may fail to start with the following error message:
[jfrt] [WARN] ... - License is not installed.
-
Configure and Start Remaining HA Nodes
Once all licenses are applied and the first node is fully operational with HA enabled, configure and start the other nodes.
-
Configure
system.yamlon Remaining NodesEdit
$JFROG_HOME/artifactory/var/etc/system.yamlon each remaining node.- In the node section, set
haEnabledtotrue. - Setting
taskAffinitytoanylets all nodes in the HA cluster act as primary nodes.
shared: node: haEnabled: true taskAffinity: any - In the node section, set
-
Copy
master.keyto Other Nodes:Copy the
master.keyfile from$JFROG_HOME/artifactory/var/etc/security/of the first node to the identical path on all other nodes. -
Ensure the database section (as configured in Step 4) is also present and identical on all nodes.
-
Start Remaining Nodes for HA:
Once the
masterKeyis synchronized across all nodes, start the Artifactory service on the remaining nodes:sudo systemctl start artifactory.service
-
-
Monitor Artifactory
To check the Artifactory status, run the following command:
sudo systemctl status artifactory.service -
Access Artifactory UI
After you start a new Artifactory node, you can access its UI through one of the following methods:
Direct Access:
- Open your browser and navigate to
http://<ARTIFACTORY_NODE_IP>:8082/. - You must do this for each newly started Artifactory node.
Load Balancer Access:
- The load balancer directs traffic to
http://<ARTIFACTORY_NODE_IP>:8082/on each of your HA nodes. - Configure your load balancer to point to the IP addresses of all your Artifactory nodes. When you access the load balancer's URL, it distributes your requests across the nodes in the cluster.
- Open your browser and navigate to
Related Topics
- Artifactory Linux Package Installation
- Artifactory System Requirements
- Database Configuration
- Filestore Configuration
- Install Artifactory on RPM
- Install Artifactory with a Linux Archive
- Upgrading Artifactory
Frequently Asked Questions
This section provides answers to frequently asked questions about installing Artifactory on Debian-based systems.
FAQs
Q: Where does Artifactory install on a Debian-based system?
A: By default, Artifactory installs and stores its data in /opt/jfrog. Run export JFROG_HOME=/opt/jfrog to refer to this path in your terminal. For more information, see JFrog Product Directory Structure.
Q: How do I find the distribution name to use in the APT repository entry?
A: Run lsb_release -c or cat /etc/os-release to find your Debian distribution code name, for example buster, bullseye, or bookworm. Replace {distribution} in the repository entry with that value.
Q: Do I need to install net-tools before installing Artifactory?
net-tools before installing Artifactory?A: Yes. The procedure requires net-tools to be installed before you install the Artifactory package. Run sudo apt-get install -y net-tools. This applies to both the APT repository method and the .deb package method.
Q: Should I install from the JFrog APT repository or from a downloaded .deb file?
.deb file?A: Use the JFrog APT repository. It is the recommended method because it simplifies updates. Installing a downloaded .deb file is optional and lets you install a specific package directly with sudo dpkg -i jfrog-artifactory-<pro|oss|cpp-ce>-<VERSION>.deb.
Updated about 5 hours ago
