制品库 Jfrog Artifactory 搭建私服
1. Jfrog Artifactory 概述
JFrog Artifactory 功能最强大的二进制制品仓库。在 Google、Apple、思科、甲骨文、华为、腾讯等众多世界500强公司中都有大规模使用,在二进制软件制品管理领域处于绝对领先地位。与其他服务不同,JJFrog Artifactory 在版本发行上分类较多且杂。
https://www.jfrog.com/confluence/display/JFROG/Installing+Artifactory
Subscription Type | Install Type | 说明 |
---|---|---|
Pro | pro | 收费 |
Pro X | pro | 收费 |
Enterprise X | pro | 收费 |
Enterprise+ | pro | 收费 |
Artifactory OSS | oss | Java,免费 |
Artifactory CE | cpp-ce | C/C++,免费 |
JFrog Container Registry | jcr | docker、k8s,免费 |
2. Jfrog Artifactory 安装
-
下载
https://jfrog.com/community/download-artifactory-oss/
因为搭建的是支持 java Maven 项目,所以下 Artifactory OSS 版本。下载完了是一个 zip 压缩包,例如下载最新版本jfrog-artifactory-oss-7.35.2-windows.zip
。直接解压即可,这里解压到如下目录
C:\jenkins\artifactory-oss7
-
配置MySQL数据库
在安装目录找到如下配置文件模板
C:\jenkins\artifactory-oss7\var\etc\system.full-template.yaml
复制一份直接命名为
C:\jenkins\artifactory-oss7\var\etc\system.yaml
修改如下配置
另外也可以在如下目录
C:\jenkins\artifactory-oss7\app\misc\db
找到相关建库脚本,例如 MySQL 数据库的建库脚本createdb_mysql.sql
CREATE DATABASE artdb CHARACTER SET utf8 COLLATE utf8_bin;
CREATE USER 'artifactory'@'%' IDENTIFIED BY 'password';
GRANT ALL on artdb.* TO 'artifactory'@'%';
FLUSH PRIVILEGES;
这里就直接使用 root 用户创建 artdb 库,不再单独创建 artifactory 用户了。
-
配置 MySQL 数据库驱动
经验证数据库启动要使用 8.x 以上版本。具体在如下地址下载
https://mvnrepository.com/artifact/mysql/mysql-connector-java
下载完,放到如下目录
C:\jenkins\artifactory-oss7\app\artifactory\tomcat\lib
-
启动服务
使用以下脚本启动
C:\jenkins\artifactory-oss7\app\bin\artifactory.bat
启动完毕后,查看数据库
3. 配置 Jfrog Artifactory
访问Jfrog Artifactory
服务
http://localhost:8082/ui/
在如下文件找到默认账号和密码:admin / password
C:\jenkins\artifactory-oss7\app\doc\README.txt
使用默认账号密码登录后
点击Get Started
设置密码,然后点击 Next ;接下来两步点击 Skip;最后点击 Finish。出现首页
4. 创建一个仓库
点击 Create a Repository
Artifactory 仓库主要有四种类型:远程仓库、本地仓库、虚拟仓库及分发仓库,分别应用在如下不同的场景。
-
远程仓库:Artifactory 仓库支持代理公网或内网二进制软件制品仓库(Artifactory, Nexus,Harbor等),按需获取后在本地进行缓存,可大幅度提升构建效率
-
本地仓库:Artifactory 本地仓库用来存储本地构建产出的软件制品。本地仓库中的软件制品通常都带有丰富的元数据,并且通过基于角色的访问控制(RBAC)实现资源隔离
-
虚拟仓库:为满足制品管理的多团队协作需求,虚拟仓库通过打包任意数量的远程仓库和本地仓库,暴露唯一的访问入口的方式,将制品提供者和消费者之间的耦合度降到最低,提升协作效率
-
分发仓库:分发仓库通过JFrog Bintray SaaS服务满足软件制品公网分发的需求,提供默认的全球CDN加速服务
点击 Create Remote Repository ,选择 Maven
Repository Key 输入 remote-cnter,其他留默认值。
点击 Create Remote Repository 即可。