需要一种机制去存储所有的二进制代码(build,packages,third-party plugins等)到类似于版本控制系统的系统。

像Git,SVN存储代码,它们存储的往往是源代码,不是二进制文件。Artifactory或者Nexus就是和Jenkins紧密集成的二进制文件存储库系统。

可以带来以下好处:
追踪构建(谁触发?谁构建)
依赖关系
部署历史

jfrog artifactory是一款二进制存储管理工具,用来管理构建工具(如:maven、gradle)等所依赖的二进制仓库,以方便管理第三方库和发布目标版本库,从而提高软件开发效率。它提供大量的插件以利于和不同工具之间的整合,内部使用权限管理更加安全,并支持高并发等等特性。

下图描述了二进制库工具和Jenkins结合在一起如何存储artifacts.

一 安装部署Artifactory

1.1 安装JAVA

[root@node4 ~]# yum install java-1.8.0-openjdk-devel.x86_64

[root@node4 logs]# vi /etc/profile

[root@node4 logs]# source /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-1.8.-openjdk-1.8.0.222.b10-.el7_6.x86_64/
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

[root@node4 ~]# java -version

通过zip包方式安装jfrog

jfrog的安装有两种方式,第一种是通过zip包的方式进行安装,第二种是通过yum或者rpm方式进行安装。

在此我们先介绍zip包方式的安装,可以通过如下网址查看zip包的相关信息:

https://bintray.com/jfrog/artifactory/jfrog-artifactory-oss-zip

以上连接打开后

1. 2 复制连接地址,并下载

[root@node4 ~]# cd /usr/local/src/

[root@node4 src]# wget https://bintray.com/jfrog/artifactory/download_file?file_path=jfrog-artifactory-oss-6.13.1.zip

[root@node4 src]# unzip -q download_file\?file_path\=jfrog-artifactory-oss-6.13.1.zip -d /usr/local/

[root@node4 src]# mv /usr/local/artifactory-oss-6.13.1 /usr/local/jfrog

[root@node4 src]# ll /usr/local/jfrog

-rw-r--r--  root root  Oct   : Access-Third-Parties-Usage-About-Box.html
drwxr-xr-x root root Oct : bin
-rw-r--r-- root root Oct : COPYING.AFFERO
drwxr-xr-x root root Oct : etc
drwxr-xr-x root root Oct : logs
drwxr-xr-x root root Oct : misc
-rw-r--r-- root root Oct : README.txt
-rw-r--r-- root root Oct : Third-Parties-Usage-About-Box.html
drwxr-xr-x root root Oct : tomcat
drwxr-xr-x root root Oct : webapps

1.3 启动

[root@node4 src]# /usr/local/jfrog/bin/artifactoryctl start

Found java executable in JAVA_HOME (/usr/lib/jvm/java-1.8.-openjdk-1.8.0.222.b10-.el7_6.x86_64/)
Using CATALINA_BASE: /usr/local/jfrog/tomcat
Using CATALINA_HOME: /usr/local/jfrog/tomcat
Using CATALINA_TMPDIR: /usr/local/jfrog/tomcat/temp
Using JRE_HOME: /usr/lib/jvm/java-1.8.-openjdk-1.8.0.222.b10-.el7_6.x86_64/
Using CLASSPATH: /usr/local/jfrog/tomcat/bin/bootstrap.jar:/usr/local/jfrog/tomcat/bin/tomcat-juli.jar
Using CATALINA_PID: /usr/local/jfrog/run/artifactory.pid
Existing PID file found during start.
Removing/clearing stale PID file.
Tomcat started.

[root@node4 logs]# ps -ef |grep java

root               : pts/    :: /usr/lib/jvm/java-1.8.-openjdk-1.8.0.222.b10-.el7_6.x86_64//bin/java -Djava.util.logging.config.file=/usr/local/jfrog/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -server -Xms512m -Xmx4g -Xss256k -XX:+UseG1GC -XX:OnOutOfMemoryError=kill -9 %p -Djruby.compile.invokedynamic=false -Dfile.encoding=UTF8 -Dartdist=zip -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true -Djava.security.egd=file:/dev/./urandom -Dartifactory.home=/usr/local/jfrog -Dfile.encoding=UTF8 -Djruby.bytecode.version=1.8 -Djruby.compile.invokedynamic=false -Djfrog.join.key.paths=/usr/local/jfrog -Dignore.endorsed.dirs= -classpath /usr/local/jfrog/tomcat/bin/bootstrap.jar:/usr/local/jfrog/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/jfrog/tomcat -Dcatalina.home=/usr/local/jfrog/tomcat -Djava.io.tmpdir=/usr/local/jfrog/tomcat/temp org.apache.catalina.startup.Bootstrap start

[root@node4 logs]# ps -ef |grep jfrog

root               : pts/    :: /usr/lib/jvm/java-1.8.-openjdk-1.8.0.222.b10-.el7_6.x86_64//bin/java -Djava.util.logging.config.file=/usr/local/jfrog/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -server -Xms512m -Xmx4g -Xss256k -XX:+UseG1GC -XX:OnOutOfMemoryError=kill -9 %p -Djruby.compile.invokedynamic=false -Dfile.encoding=UTF8 -Dartdist=zip -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true -Djava.security.egd=file:/dev/./urandom -Dartifactory.home=/usr/local/jfrog -Dfile.encoding=UTF8 -Djruby.bytecode.version=1.8 -Djruby.compile.invokedynamic=false -Djfrog.join.key.paths=/usr/local/jfrog -Dignore.endorsed.dirs= -classpath /usr/local/jfrog/tomcat/bin/bootstrap.jar:/usr/local/jfrog/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/jfrog/tomcat -Dcatalina.home=/usr/local/jfrog/tomcat -Djava.io.tmpdir=/usr/local/jfrog/tomcat/temp org.apache.catalina.startup.Bootstrap start

通过上图,可以很明显的看出jfrog已经正常启动,并且也可以看出jfrog默认监听的是8081端口。

http://192.168.132.134:8081/artifactory/webapp/#/login

jfrog默认的端口是8081,默认的用户名和密码是:admin/password。

1.4 登陆进入

安装完成

二 Jenkins集成

2.1  添加凭据

2.2 Jenkins安装artifactory插件

重启jenkins

2.3 配置artifactory

配置并测试

测试成功连接,点击保存

三 创建一个项目

admin-->local

点击new

选择generc

名称example-project

保存结束

DEVOPS技术实践_10:安装部署Artifactory的更多相关文章

  1. Azure DevOps Server 入门实践与安装部署

    一,引言 最近一段时间,公司希望在自己的服务器上安装本地版的 Azure DevOps Service(Azure DevOps Server),用于项目内的测试,学习.本着学习的目的,我也就开始学习 ...

  2. Git--02 Devops介绍及git安装部署

    目录 1. Devops介绍 01. 运维介绍 02. Devops是什么 03. Devops能干嘛 04. Devops如何实现 2. Git版本控制系统 01. 版本控制系统简介 02. 为什么 ...

  3. DEVOPS技术实践_14:使用docker部署jenkins

    一 基础环境准备 [root@node6 ~]# cat /etc/redhat-release CentOS Linux release (Core) [root@node6 ~]# yum -y ...

  4. DEVOPS技术实践_17:Jenkins使用扩展邮件功能发送邮件

    一 环境准备 1.1 安装插件Email Extension 系统管理-管理插件-安装Email Extension插件 1.2 配置 配置jenkins邮箱的全局配置:系统管理-系统设置-完成邮箱配 ...

  5. DEVOPS技术实践_13:使用Jenkins持续传送设计-CD基础

    1. 分支策略 持续集成中使用的分支策略包括以下三个: The master branch The integration branch The feature branch 而CD只在Integra ...

  6. DEVOPS技术实践_12:创建持续集成的管道

    持续集成不仅包含了Jenkins或者相关其它的CI工具,也包含了包含代码如何控制,采用的什么分支策略等.不同的组织可能采用不同的类型的策略来完成CI,策略类型和项目的类型的有很大的关系. 一 分支策略 ...

  7. DEVOPS技术实践_11:Jenkins集成Sonar

    前言 前面已经有介绍sonar的安装,简单应用,下面在简答的研究一下sonar和jenkins集成的简单使用,对于sonar的安装不做介绍 一 sonar的简单介绍 持续检查避免了低质量的代码,比如S ...

  8. DEVOPS技术实践_06:sonar与Jenksin集成

    代码质量管理平台 一.checkout和打包功能 1.1 gitlab在新建一个文件 后续在写入内容 1.2 Jenkins新建一个任务 两个参数 1.3 流水线配置 copy仓库地址: http:/ ...

  9. DEVOPS技术实践_03:Jenkins自动构建

    一.提交代码自动构建 当开发人员在gitlab提交代码后,会自动触发jenkin构建 点击项目---->点击diy_maven-TEST----->点击配置--->构建触发器---- ...

随机推荐

  1. lavarel box 地址

    https://atlas.hashicorp.com/laravel/boxes/homestead download URL https://atlas.hashicorp.com/laravel ...

  2. APP UI设计趋势:为好设计而动

    http://www.cocoachina.com/design/20150703/12029.html 作者:bone9 善心悦目的动效已然成为一个app的必备,作为设计师自然要跟随趋势学习.APP ...

  3. 【牛腩视频】之SQL触发器 标签: 数据库 2015-05-23 09:44 1339人阅读 评论(40) 收藏

    之前在学习机房管理系统.net版的时候,已经写过了关于数据库的操作,但是现在开始学习牛腩,才发现之前自己理解的太浅显,很多东西看似好像会了,不去实际操作一下,不把代码从头到尾敲出来,到头来还是不会,所 ...

  4. SDUT-1479_数据结构实验之栈与队列九:行编辑器

    数据结构实验之栈与队列九:行编辑器 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 一个简单的行编辑程序的功能是:接受用 ...

  5. SDUT-2119_数据结构实验之链表四:有序链表的归并

    数据结构实验之链表四:有序链表的归并 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 分别输入两个有序的整数序列(分别包 ...

  6. qt开发ROS gui界面环境配置过程总结

    这段时间花了点时间配置了在qtcreator5.9.1上开发ros gui界面的环境,终于可以实现导入工程,插断点调试了.总结起来需要注意以下几点: 1.安装插件ros_qtc_plugin,ROS与 ...

  7. Django之内置组件

    Django组件介绍       分页器的使用       Form       modelForm       orm       cookie和session       中间件       信号 ...

  8. 22-1 rbac权限设计

    一 表结构设计 from django.db import models # Create your models here. from django.db import models # Creat ...

  9. EF的多线程与分库架构设计实现(2)

    距离上次讲解EF6分库架构(https://www.cnblogs.com/gbat/p/6374607.html)实现已经过去2年了..上次发出来后,一直到现在依然有很多人陆陆续续的加我好友,问我要 ...

  10. Python深入:Distutils发布Python模块

    Distutils可以用来在Python环境中构建和安装额外的模块.新的模块可以是纯Python的,也可以是用C/C++写的扩展模块,或者可以是Python包,包中包含了由C和Python编写的模块. ...