Sunday, October 8, 2023

Install JFrog Artifactory on Linux instance | Setup JFrog Artifactory on Ubuntu | Install JFrog Artifactory 7.X on Ubuntu 22.0.4

Artifactory is one of the popular binary repository managers. It is Java based open source tool, used for storing build artifacts and docker images.

Some of the key features of Artifactory:
  • Supports 27 different package types including helm charts, docker images regardless of tech stack.
  • A single source of truth for all your binaries
  • Integration with all CICD tools
  • role based authorization with teams to manage artifacts 
  • you can create local, remote and virtual repositories



Artifactory can be integrated with many Continuous integration and Continuous delivery tools. Artifactory is mainly used by Ant, Maven and Gradle build tools. Let us see how to install Artifactory on Ubuntu 22.0.4 using Deb packages.

Pre-requisites:
  • VM needs to have at least 4GB RAM, for AWS choose at least medium instance type.
  • Default ports 8081 and 8082 needs to be opened. 8081 for Artifactory REST APIs. 8082 for everything else (UI, and all other product’s APIs).
Change Host Name to Artifactory
sudo hostnamectl set-hostname Artifactory

Update Ubuntu OS
sudo apt update

Add JFrog Artifactory APT repository
echo "deb https://releases.jfrog.io/artifactory/artifactory-debs xenial main" | sudo tee -a /etc/apt/sources.list.d/artifactory.list


Import repository GPG key by running the following commands
curl -fsSL  https://releases.jfrog.io/artifactory/api/gpg/key/public|sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/artifactory.gpg

Update the package
sudo apt update

Install Artifactory
sudo apt install jfrog-artifactory-oss -y
The above message should confirm Artifactory have been successfully installed.
Now let us start Artifactory service.

Start Artifactory 
sudo systemctl start artifactory.service
Create symbolic link
sudo systemctl enable artifactory.service


Check whether Artifactory is running?
sudo systemctl status artifactory.service

Press q to quit 

You can also check the logs

sudo tail -f /var/opt/jfrog/artifactory/log/artifactory-service.log


Check if service is running locally on 8081 port

curl localhost:8081

Access Artifactory App
Go to browser and open public IP/DNS name along with port no:8081
http://your_public_dns_name:8081

You should see Artifactory welcome page, login with default username and password which is
admin/password



After Login, click on Get started. 

Now reset admin password. enter as Admin1234/Admin1234

Skip for base URL and skip proxy setup
Click Next, click on Finish


That's it! Artifactory is setup successfully.

How to Integrate Artifactory and Jenkins?
https://www.coachdevops.com/2020/04/integrate-artifactory-with-jenkins.html

You can watch the steps in details on our YouTube channel:
  

1 comment:

  1. sudo tail -f /var/opt/jfrog/artifactory/log/artifactory-service.log
    at org.jfrog.storage.wrapper.JFrogConnectionWrapper.invoke(JFrogConnectionWrapper.java:106)
    ... 24 common frames omitted
    Caused by: java.sql.SQLException: Connection is closed
    at com.zaxxer.hikari.pool.ProxyConnection$ClosedConnection.lambda$getClosedConnection$0(ProxyConnection.java:503)
    at jdk.proxy3/jdk.proxy3.$Proxy7.createStatement(Unknown Source)
    at com.zaxxer.hikari.pool.ProxyConnection.createStatement(ProxyConnection.java:285)
    at com.zaxxer.hikari.pool.HikariProxyConnection.createStatement(HikariProxyConnection.java)
    ... 29 common frames omitted
    2024-10-21T16:32:26.480Z [jfrt ] [INFO ] [a37975826105526d] [actoryContextConfigListener:88] [Catalina-utility-1 ] - Artifactory context initialization started for context: null
    2024-10-21T16:32:26.480Z [jfrt ] [ERROR] [a37975826105526d] [actoryContextConfigListener:93] [Catalina-utility-1 ] - Failed initializing Artifactory context: Artifactory home not initialized.
    at org.jfrog.storage.wrapper.JFrogConnectionWrapper.invoke(JFrogConnectionWrapper.java:106)
    ... 24 common frames omitted
    Caused by: java.sql.SQLException: Connection is closed
    at com.zaxxer.hikari.pool.ProxyConnection$ClosedConnection.lambda$getClosedConnection$0(ProxyConnection.java:503)
    at jdk.proxy3/jdk.proxy3.$Proxy7.createStatement(Unknown Source)
    at com.zaxxer.hikari.pool.ProxyConnection.createStatement(ProxyConnection.java:285)
    at com.zaxxer.hikari.pool.HikariProxyConnection.createStatement(HikariProxyConnection.java)
    Caused by: java.sql.SQLException: Connection is closedCaused by: java.sql.SQLException: Connection is closed

    I keep getting this error each time i try to check the logs and ma unable to access the website.

    ReplyDelete

DevSecOps Bootcamp Dec 2024 Schedule | DevSecOps & AWS Azure Cloud Coaching by Coach AK | DevSecOps and Cloud Computing Online Classes

Lot of new topics covered like GitHub Actions, GitHub Advanced Security, Helm, Prometheus and Grafana..) The DevOps requirements in the IT m...