Ubuntu 20.04+安装JFrog CLI超详细指南

Ubuntu 20.04+ 安装 JFrog CLI(jf 命令)超详细教程

适用:Ubuntu 20.04 / 22.04 / 24.04,amd64/arm64,解决 jfr 旧版、无 jf 命令问题

官方下载:https://jfrog.com/getcli/

作者:Linux运维/制品库实践

一、前置说明

  • JFrog CLI v2 统一命令为 jf,旧版 v1 是 jfr,本文只装 v2 最新版
  • 全程命令可直接复制执行,无需修改(除私服地址/账号)
  • 配置文件自动保存在 ~/.jfrog/,无需手动创建目录

二、卸载旧版本(必须,避免冲突)

bash 复制代码
# 卸载 apt 安装的旧版
sudo apt remove -y jfrog-cli jfrog-cli-v2-jf

# 删除残留二进制
sudo rm -f /usr/local/bin/jfr /usr/local/bin/jf /usr/bin/jf

# 清空旧配置(可选,重置所有私服连接)
rm -rf ~/.jfrog/

三、官方一键安装(推荐,自动适配架构)

方法1:curl 官方脚本(最快)

bash 复制代码
# 官方最新安装脚本(v2)
curl -fL https://install-cli.jfrog.io | sh

# 移动到系统 PATH 目录
sudo mv ./jf /usr/local/bin/

# 赋予执行权限
sudo chmod +x /usr/local/bin/jf

方法2:apt 源安装(适合长期维护)

bash 复制代码
# 导入 GPG 密钥
wget -qO - https://releases.jfrog.io/artifactory/jfrog-gpg-public/jfrog_public_gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/jfrog-archive-keyring.gpg

# 添加 JFrog apt 源
echo "deb [signed-by=/usr/share/keyrings/jfrog-archive-keyring.gpg] https://releases.jfrog.io/artifactory/jfrog-debs stable main" | sudo tee /etc/apt/sources.list.d/jfrog.list

# 更新并安装
sudo apt update
sudo apt install -y jfrog-cli-v2-jf

四、验证安装成功

bash 复制代码
# 查看版本
jf -v
# 或
jf --version

输出类似:jf version 2.65.0 即成功

五、配置 JFrog 私服连接(核心)

1. 交互式配置(新手推荐)

bash 复制代码
jf c add  # 等价 jf config add

按提示依次输入:

  1. 服务别名(自定义,如:kylin_jfrog
  2. JFrog 平台地址:http://172.29.157.157:8082/
  3. 选择 Save and continue(默认 Artifactory/Xray 等路径)
  4. 输入用户名、密码/API Token

2. 非交互式配置(脚本/CI 用)

bash 复制代码
jf c add my_jfrog \
  --url=http://xxx.xxx.xxx.xxx/ \
  --user=你的用户名 \
  --password=你的密码 \
  --interactive=false

3. 常用配置命令

bash 复制代码
# 查看所有已配置服务器
jf c show

# 切换默认服务器(多私服环境)
jf c use my_jfrog

# 删除指定服务器配置
jf c remove my_jfrog

六、核心实战:上传文件到指定目录(自动建目录)

地址拆解(你的私服)

原地址:`http://xxx.xxx.xxx.xxx/artifactory/dest-dirs

  • 远程目录:dest-dirs`
  • 目录不存在会自动递归创建,无需网页端新建

上传命令(直接复制改文件名)

bash 复制代码
# 上传单个文件
jf rt upload test.rpm dest-dirs

# 批量上传当前目录所有 .rpm
jf rt upload "*.rpm" dest-dirs

# 强制覆盖已存在文件
jf rt upload test.rpm dest-dirs --overwrite

七、配置文件存储位置(重要)

所有服务器地址、账号、加密凭证都存在:

复制代码
~/.jfrog/
├── jfrog-cli.conf.v2  # 核心配置文件(加密存储)
└── plugins/           # 插件目录

重置所有配置:rm -rf ~/.jfrog/

八、常见问题排查

1. command not found: jf

bash 复制代码
# 检查是否在 PATH
echo $PATH | grep /usr/local/bin

# 手动添加到 PATH(临时)
export PATH=$PATH:/usr/local/bin

# 永久添加(~/.bashrc 或 ~/.zshrc)
echo 'export PATH=$PATH:/usr/local/bin' >> ~/.bashrc
source ~/.bashrc

2. 上传权限不足

  • 确认账号有 RPMS 仓库的部署/写入权限
  • 核对用户名/密码/Token 是否正确
  • jf rt ping 测试连接是否正常

3. 连接超时/无法访问

  • 检查服务器 IP、端口 8082 是否开放
  • 确认网络互通(ping xxx.xxx.xxx.xxx
  • 关闭防火墙/放行 8082 端口

九、总结

  1. 官方脚本/APT 两种安装方式,适配所有 Ubuntu 20.04+
  2. jf c add 一键配置私服,一次配置永久生效
  3. jf rt upload 自动创建目录,一行命令完成制品上传
  4. 配置文件统一管理,便于迁移/备份
相关推荐
wdfk_prog2 小时前
嵌入式面试真题第 10 题:高优化等级下共享状态可见性、内存模型与系统级同步设计
java·linux·开发语言·面试·职场和发展·架构·c
x-cmd4 小时前
Mac 涨价后,本地 AI 还能千元入门吗?
linux·人工智能·macos·ai·agent·amd·本地ai入门
AOwhisky6 小时前
下一代容器来了?Docker 宣布原生支持 WebAssembly
java·运维·docker·容器·rust·wasm
不羁的木木9 小时前
HarmonyOS APP实战-基于Image Kit的图像处理APP - 第9篇:批量处理与编辑历史
图像处理·ubuntu·harmonyos
春卷同学10 小时前
HarmonyOS掌上记账APP开发实践第15篇:ArkTS 类型系统深度解析 — 从接口到联合类型的灵活运用
ubuntu·华为·harmonyos
摇滚侠10 小时前
Linux 零基础教程 09、11、77
linux·运维·服务器
Lottie202610 小时前
电商自动化提质增效:API接口落地的核心价值与实战用法
运维·自动化
Hardworking66611 小时前
第6章 数据工程
运维·服务器·数据库·数据工程
jieyucx12 小时前
Docker 入门第六阶段:综合实战项目
运维·docker·容器
美丽的欣情12 小时前
RK3588 Debian 交叉编译环境搭建(Windows + VMware Debian + CMake)
运维·windows·debian