安裝并配置Jfrog-Artifactory

1.Jfrog-Artifactory介紹

先貼出Jfrog-Artifactory官網地址

這玩意說白了就是一個還算比較好用的產物存儲倉庫,升級版FTP,帶界面。
這次已開源閹割版作為案例,買不起企業(yè)版,一提這個企業(yè)版就流口水......
(檸檬精酸一下:有錢大佬買得起企業(yè)版的話,那這就是一個牛逼克拉斯的玩意,賊全,賊好用)

一般用來存儲Jenkins的構建包,且支持RestfulApi,反正就很好用就對了。

2.安裝Jfrog-Artifactory

官網文檔
使用Docker安裝省時,省事。

docker run --name \
artifactory --restart=unless-stopped \
-d \
-p 8081:8081 \
-p 8082:8082 \
-v /data/artifactory:/var/opt/jfrog/artifactory \
releases-docker.jfrog.io/jfrog/artifactory-oss:latest

開放對應端口

firewall-cmd --zone=public --add-port=8081-8082/tcp --permanent
firewall-cmd --reload

等待Docker跑起來就直接訪問界面 http://192.168.1.110:8082
默認密碼是admin:password

image.png

點進去后按照新手引導進行配置一下就好了。

3.配置Jfrog-Artifactory

3.1 配置上傳大小限制

image.png

image.png

這里自己根據項目情況按需添加,寫0代表沒得限制

3.2 配置上傳賬號

這個新建一個用戶,新建一個組,將用戶加入到這個組中,在組上配置權限就好可以


image.png

3.3 配置存儲庫

image.png

image.png

看到這個界面我就覺得有錢真棒,好氣啊,沒錢得我只能選擇第一個

把倉庫的key輸入一下點擊完成就好了,其他的高級玩法就是點擊每個值上面的小問號去研究了。

3.4 手動上傳一個文件

image.png

4. 配置NGINX代理

官方教程

如果在上傳到最后會有一丟丟卡頓就需要加上proxy_request_buffering off;這一個配置。

4.1 Https
## add ssl entries when https has been set in config
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_certificate      /etc/nginx/ssl/yourdomain.com.crt;
ssl_certificate_key  /etc/nginx/ssl/yourdomain.com.key;
ssl_session_cache shared:SSL:1m;
ssl_prefer_server_ciphers   on;
## server configuration
server {
    listen 443 ssl;
    listen 80 ;
      
    server_name yourdomain.com;
 
    if ($http_x_forwarded_proto = '') {
        set $http_x_forwarded_proto  $scheme;
    }
    ## Application specific logs
    ## access_log /var/log/nginx/yourdomain.com-access.log timing;
    ## error_log /var/log/nginx/yourdomain.com-error.log;
    rewrite ^/$ /ui/ redirect;
    rewrite ^/ui$ /ui/ redirect;
    chunked_transfer_encoding on;
    client_max_body_size 0;
    location / {
        proxy_read_timeout  2400s;
        proxy_pass_header   Server;
        proxy_cookie_path   ~*^/.* /;
        proxy_pass          http://<artifactory-ip>:8082;
        proxy_next_upstream error timeout non_idempotent;
        proxy_next_upstream_tries    1;
        proxy_set_header    X-JFrog-Override-Base-Url $http_x_forwarded_proto://$host:$server_port;
        proxy_set_header    X-Forwarded-Port  $server_port;
        proxy_set_header    X-Forwarded-Proto $http_x_forwarded_proto;
        proxy_set_header    Host              $http_host;
        proxy_set_header    X-Forwarded-For   $proxy_add_x_forwarded_for;
 
        location ~ ^/artifactory/ {
            proxy_pass    http://<artifactory-ip>:8081;
        }
    }
}
4.2 Http
server {
          listen 80;
          
          server_name jfrog.ronds.top;

          if ($http_x_forwarded_proto = '') {
              set $http_x_forwarded_proto  $scheme;
          }

          rewrite ^/$ /ui/ redirect;
          rewrite ^/ui$ /ui/ redirect;
          chunked_transfer_encoding on;
          client_max_body_size 0;
          
          proxy_request_buffering off; # 這個就是防止卡頓的
          proxy_http_version 1.1;

          location / {
              proxy_read_timeout  2400s;
              proxy_pass_header   Server;
              proxy_cookie_path   ~*^/.* /;
              proxy_pass          http://<artifactory-ip>:8082;
              proxy_next_upstream error timeout non_idempotent;
              proxy_next_upstream_tries    1;
              proxy_set_header    X-JFrog-Override-Base-Url $http_x_forwarded_proto://$host:$server_port;
              proxy_set_header    X-Forwarded-Port  $server_port;
              proxy_set_header    X-Forwarded-Proto $http_x_forwarded_proto;
              proxy_set_header    Host              $http_host;
              proxy_set_header    X-Forwarded-For   $proxy_add_x_forwarded_for;

              location ~ ^/artifactory/ {
                  proxy_pass    http://<artifactory-ip>:8081;
              }
          }
      }
4.3 K8S中使用Ingress

如果你是在K8S中使用,需要在yaml文件中加上這兩個配置


image.png

5.使用腳本上傳一個文件

在界面上獲取腳本


image.png

這里就是上傳腳本了,可以使用任意語言去上傳,但是作為產物倉庫,最長使用的還是curl.
這個密碼可以是明文的也可以是加密后的,在左邊一個Tab(Configure)那邊輸入密碼后這這一個Tab中就能看到帶密碼的命令了。

?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容