Artifactory 是一个存放制品(Artifacts)的工具。当前,Artifactory 是一个非常有影响力,功能非常强大的工具。
Artifactory 支持下面的方式安装
下面用Docker的方式安装,其他安装方式见 Installing Artifactory
JFROG_HOME=/opt/jfrog
mkdir -p $JFROG_HOME/artifactory/var/etc/
cd $JFROG_HOME/artifactory/var/etc/
touch ./system.yaml
chown -R 1030:1030 $JFROG_HOME/artifactory/var
如果您在Mac计算机上使用Docker,请另外运行以下命令。
chmod -R 777 $JFROG_HOME/artifactory/var
自定义产品配置(可选),包括数据库、Java选项和文件存储。
对于 Docker 安装,验证 shared.node.id 和 shared.node.ip 配置添加在system.yaml中。
如果没有手动添加,它们将自动解析为容器的IP,这意味着其他节点和服务将无法访问此实例。
system.yaml 配置如下所示
## @formatter:off
## JFROG ARTIFACTORY SYSTEM CONFIGURATION FILE
## HOW TO USE: comment-out any field and keep the correct yaml indentation by deleting only the leading '#' character.
configVersion: 1
## NOTE: JFROG_HOME is a place holder for the JFrog root directory containing the deployed product, the home directory for all JFrog products.
## Replace JFROG_HOME with the real path! For example, in RPM install, JFROG_HOME=/opt/jfrog
## NOTE: Sensitive information such as passwords and join key are encrypted on first read.
## NOTE: The provided commented key and value is the default.
## SHARED CONFIGURATIONS
## A shared section for keys across all services in this config
shared:
## Java 11 distribution to use
#javaHome: "JFROG_HOME/artifactory/app/third-party/java"
## Extra Java options to pass to the JVM. These values add to or override the defaults.
#extraJavaOpts: "-Xms512m -Xmx2g"
## Security Configuration
security:
## Join key value for joining the cluster (takes precedence over 'joinKeyFile')
#joinKey: "<Your joinKey>"
## Join key file location
#joinKeyFile: "<For example: JFROG_HOME/artifactory/var/etc/security/join.key>"
## Master key file location
## Generated by the product on first startup if not provided
#masterKeyFile: "<For example: JFROG_HOME/artifactory/var/etc/security/master.key>"
## Maximum time to wait for key files (master.key and join.key)
#bootstrapKeysReadTimeoutSecs: 120
## Node Settings
node:
## A unique id to identify this node.
## Default auto generated at startup.
id: "art1"
## Default auto resolved by startup script
ip: "localhost"
## Sets this node as primary in HA installation
#primary: true
## Sets this node as part of HA installation
#haEnabled: true
## Database Configuration
database:
## One of mysql, oracle, mssql, postgresql, mariadb
## Default Embedded derby
## Example for postgresql
#type: postgresql
#driver: org.postgresql.Driver
#url: "jdbc:postgresql://<your db url, for example: localhost:5432>/artifactory"
#username: artifactory
#password: password
docker run --name artifactory -v $JFROG_HOME/artifactory/var/:/var/opt/jfrog/artifactory -d -p 8081:8081 -p 8082:8082 releases-docker.jfrog.io/jfrog/artifactory-oss:latest
http://SERVER_HOSTNAME:8082/ui/
。例如,在本地计算机上:http://localhost:8082/ui/
默认的管理员用户:
username: admin
password: password
docker logs -f artifactory
Artifactory 的仓库分为三种,Local Repository、Remote Repository、Virtual Repository
将制品和二进制文件部署到集中的本地存储库中。
将远程存储库用作由远程URL管理的存储库的缓存代理。
聚合多个Local或者Remote存储库,对外只用提供一个URL。
https://jfrog.com/whitepaper/best-practices-structuring-naming-artifactory-repositories/
在 Gradle 中使用 Artifactory 分为两个部分,一个是从 Artifactory 解析依赖,另外一个是上传制品到 Artifactory
repositories {
maven {
url = 'http://localhost:8082/artifactory/libs-release/'
allowInsecureProtocol = true
}
}
-- 待更新 --
-- 待更新 --
1 jfrog 官方文档
https://www.jfrog.com/confluence/display/JFROG
2 写给那些想使用 JFrog Artifactory 管理制品的人
https://cloud.tencent.com/developer/article/1746731
3 Aliyun Maven 仓库地址
[
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。