一、jfrog artifactory简介
jfrog artifactory是一款二进制存储管理工具,用来管理构建工具(如:maven、gradle)等所依赖的二进制仓库,以方便管理第三方库和发布目标版本库,从而提高软件开发效率。它提供大量的插件以利于和不同工具之间的整合,内部使用权限管理更加安全,并支持高并发等等特性.
**1 .**搭建Artifactory私服的原因还有:
私有仓库的目的是作为团队内所使用的所有软件构件的内部私有构件仓库,将Maven构件(jar和pom)存储到一个专门的Maven仓库比将它们存储到版本控制系统中更有优势,这是因为:
–>构件(jar)是二进制文件,不属于git版本控制系统,后者在处理文本文件方面比较好
–>减少可能的版本冲突
–>减少首次构建时需要的手动干涉
–>中央仓库包含所有依赖的软件构件,引用单一的中央仓库比引用多个独立的本地库要好
–>使用内部仓库做clean构建时会快些,因为Maven构件是从内部服务器而不是从因特网上获取
以上介绍来源与百度百科
二、安装基础环境
1.jfrog的运行需要jdk1.8以上版本支持
tar xf jdk-8u221-linux-x64.tar.gz
mv jdk1.8.0_221/ /usr/local/jdk
2.配置jdk环境变量
cat >> /etc/profile.d/java.sh << “EOF”
export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
EOF
source /etc/profile.d/java.sh
3.解压Jfrog
unzip -q jfrog-artifactory-jcr-6.18.1.zip
mv artifactory-jcr-6.18.1/ /usr/local/jfrog
4.启动服务
cd /usr/local/jfrog
./bin/artifactoryctl start
Found java executable in JAVA_HOME(/usr/local/jdk)
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/local/jdk
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
Tomcat started.
*查看是否有监听端口*
netstat -anpt| grep :8081
5.浏览器输入:http://serverIP:8081
用户名: admin
密码: password
三 、为jfrog 配置TLS认证.
1.下载源码包
wget http://nginx.org/download/nginx-1.16.0.tar.gz
5.解压
tar xf nginx-1.16.0.tar.gz -C /usr/local/src/
6.安装依赖包及库文件
apt-get install openssl make gcc g++ libpcre++-dev libpcre++ libssl-dev zlib1g zlib1g-dev
7.编译安装
cd /usr/local/src/nginx-1.16.0/
useradd -M -s /sbin/nologin nginx
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module && make && make install
echo $? #返回0即成功
8.Ssl证书
cd /usr/local/nginx/
openssl req -x509 -nodes -days 36500 -newkey rsa:2048 -keyout conf/nginx.key -out conf/nginx.crt
9.修改配置文件
vim conf/nginx.conf
user nginx;
worker_processes auto;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
server {
listen 443 ssl;
server_name localhost;
ssl_certificate nginx.crt;
ssl_certificate_key nginx.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:8081;
}
}
}
修改完成启动即可
./sbin/nginx
访问:https://{{SERVER_IP}}