成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > golang實(shí)踐-第三方包為私有庫的配置方案

golang實(shí)踐-第三方包為私有庫的配置方案

熱門標(biāo)簽:百度地圖標(biāo)注后傳給手機(jī) excel地圖標(biāo)注分布數(shù)據(jù) 阿克蘇地圖標(biāo)注 評價高的400電話辦理 外呼系統(tǒng)用什么卡 外呼系統(tǒng)顯本地手機(jī)號 電話機(jī)器人軟件免費(fèi) 壽光微信地圖標(biāo)注 涿州代理外呼系統(tǒng)

正常使用了go 1.8一段時間沒有發(fā)現(xiàn)異常,為了發(fā)布便捷,以及后期引入plug-in,開始將大項目分解。涉及到通過vendor引入私有庫保存的第三方包。

參考網(wǎng)上那些反復(fù)轉(zhuǎn)帖的材料,始終無法成功,總是都會出現(xiàn)類似以下的錯誤:

package git.oschina.net/xxx/yyy: unrecognized import path "git.oschina.net/xxx/yyy" (parse https://git.oschina.net/xxx/yyy?go-get=1: no go-import meta tags ())

反復(fù)折騰后,終于搞定,這里整理一下,備查。

整個過程三個步驟:生成公鑰、git配置、第三方包調(diào)用

公鑰生成

使用私有庫,是必須要通過公鑰的,而公鑰是由客戶端生成,然后上傳到oschina上。網(wǎng)上資料比較多,相對容易解決.

1.生成公鑰文件

//-f 參數(shù):指定鑰匙文件名稱;不設(shè)置,則默認(rèn)為id_rsa(已經(jīng)存在則會有覆蓋提示)。
//-C 參數(shù):注釋描述,這里隨便寫了個郵箱地址。
//-t 參數(shù):指定加密格式,默認(rèn)為dsa
$ssh-keygen -t rsa -C "aaa@bbb.com" -f ~/.ssh/ccc_rsa
//連續(xù)回車,忽略密碼設(shè)置
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /Users/apple/.ssh/ccc_rsa.
Your public key has been saved in /Users/apple/.ssh/ccc_rsa.pub.
The key fingerprint is:
SHA256:FBG/a3Ed4KFYjVITwRiwPKj+HjCKiBxu10D/K2wVPE8 aaa@bbb.com
The key's randomart image is:
+---[RSA 2048]----+
|      ..=B*=o    |
|     o .o=o+.o   |
|   .. = o.o . .  |
|  ...  * E . . . |
| .+. .  S o . .  |
|*o.oo .. . +     |
|=+..o...  o      |
|. .. =  ..       |
|   .+ ..         |
+----[SHA256]-----+

可以查看到增加了ccc_rsa與ccc_rsa.pub兩個文件,可以很容易查看:

$ ls ~/.ssh/
ccc_rsa     ccc_rsa.pub

2.添加密鑰到ssh-agent

添加SSH key 到 ssh-agent很簡單,添加前確保ssh-agent可用即可:

 $ ssh-add ~/.ssh/ccc_rsa

3.查看公鑰

輸入cat ~/.ssh/ccc_rsa.pub,可以查看到公鑰信息,后面需要將其拷入到git服務(wù)器進(jìn)行設(shè)置。

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCm4HVLb19i2jp10Sv9zs9ifmfAB8r3dhSZ3ZuHmAr7oOBG01TqNsArJf5GpbtNc4aEhqZoHfE1tEgPkqMiSkCW6w+m7rfCjCykZ7U2IjxUvcDOqbHPylpdWzTRFq+jcvqeFyHqMv0B0ORqWvHqBwzDWwyBbCWTDhrTpAfykfAqVSb62JEnaj84MELoOIoSnkuAXcA+EnkG+3HxUqt+3TFq/p9xLfc2NqZG4wZg00fIlS6b+yoRkvVE8fx9V1K4ATbiVmLk+wjk4C7NC3V71UyyCD5knMa0Dd54re1gaZJOl8K7ukc9IgKAQwOcYde0nyN7kVZtNt/G+VhpAibY/7Wv aaa@bbb.com

4.通過config指定鑰匙

如果項目涉及到多個私有庫,或者指定了rsa文件名,就需要設(shè)置ssh config文件。執(zhí)行vi ~/.ssh/config命令,填寫以下內(nèi)容:

#Host 別名
Host ccc-oschina     
        #HostName  主機(jī)名
        HostName git.oschina.net
        #驗(yàn)證方式
        PreferredAuthentications publickey
        #IdentityFile 指定文件的路徑
        IdentityFile ~/.ssh/ccc_rsa

git服務(wù)的公鑰配置

git服務(wù)器,是能夠面向賬戶或者項目進(jìn)行公鑰設(shè)置。由于oschina平臺提供了靈活的組織管理,建議為賬戶配置公鑰。

相對賬戶設(shè)置,大家比較熟悉,這里簡單描述一下項目的公鑰設(shè)置。登錄平臺->選擇項目->進(jìn)入“管理”->點(diǎn)擊左側(cè)的“公鑰管理”->點(diǎn)擊“添加部署公鑰”,將剛剛生成的公鑰填寫到“公鑰”欄,并為它起一個名稱,保存即可。

配置保存后,可以通過ssh -T測試

$ssh -T git@git.oschina.net
#成功后,會顯示歡迎信息。因?yàn)榕渲玫捻椖抗€,所以顯示為匿名用戶。如果是在成員的配置信息中設(shè)置的公鑰,則會顯示出成員昵稱。
Welcome to Git@OSC, Anonymous!

但是,以上是自己生成了密鑰,如果是第三方訪問使用,則需要做添加公鑰的配置。

將gitserver上的公鑰,拷貝下來(不要有前后空格),寫入ssh默認(rèn)的authorized_keys文件中,并放入~/.ssh/目錄下。如果不采用默認(rèn)文件名,則需要調(diào)整配置,具體可查度娘。

第三方調(diào)用

配置成功后,就可以在項目中引入第三方包,按照平時用法會提示錯誤:

$go get git.oschina.net/xxx/yyy
Fetching https://git.oschina.net/xxx/yyy?go-get=1
Parsing meta tags from https://git.oschina.net/xxx/yyy?go-get=1 (status code 404)
package git.oschina.net/xxx/yyy: unrecognized import path "git.oschina.net/xxx/yyy" (parse https://git.oschina.net/xxx/yyy?go-get=1: no go-import meta tags ())

其原因是因?yàn)榘窂叫枰臑?git文件的路徑,只需要增加.git就會正常,需要特別注意:

//包路徑的后邊需要增加.git
$go get git.oschina.net/xxx/yyy.git

這樣,就可以在代碼中引入第三方的私有庫了。當(dāng)然,我們采用glide、godep等第三方包管理工具也可以,只要注意包路徑后邊增加.git就好。

補(bǔ)充:athens 搭建golang私有g(shù)itlab倉庫 (踩了git和https的坑)

環(huán)境:

gitlab: gitlab需要配置可信任https。

nginx:兩個

git:最新版,?。?!重要,不是最新版go get會出現(xiàn)問題

athens

golang

原理:

通過nginx轉(zhuǎn)發(fā),實(shí)現(xiàn)外網(wǎng)請求和內(nèi)網(wǎng)請求路由。配置https://goproxy.io 下載golang等被墻的包。

注意事項:

1、git一定要是最新版

2、gitlab一定要配置https。目前athens使用http代理我試了不行,有會配置的同學(xué)歡迎指教。

3、location ~* ^/[^/]+/[^/]+$ 這個表達(dá)式固定匹配兩級path,類似/aa/bb nginx并不完全支持正則。想要匹配三級路徑等需要另外加location ~* ^/[^/]+/[^/]+/[^/]+$

4、return 200 "!DOCTYPE html>head>meta content='$host$uri git ssh://git@$host:$uri.git' name='go-import'>/head>/html>"; 這個配置注意ssh端口根據(jù)情況修改,比如ssh端口為8080,則該為:return 200 "!DOCTYPE html>head>meta content='$host$uri git ssh://git@$host:8080$uri.git' name='go-import'>/head>/html>";

網(wǎng)絡(luò)流程圖:

準(zhǔn)備:

1.機(jī)器3個:(也可以在一個機(jī)器上,修改對應(yīng)端口即可)

private.gitlab.com: 部署私有倉庫機(jī)器

athens.com: athens倉庫入口機(jī)器(可以不用,但是這樣外網(wǎng)的包就不會緩存在本地)

athens.private.com: 私有g(shù)itlab代理。

2.在阿里云上申請可信任的免費(fèi)CA證書。

private.gitlab.com 部署和相關(guān)配置:

1.在該機(jī)器上部署gitlab倉庫

2.配置nginx https,配置如下:

#user  nobody;
worker_processes  1;
 
error_log  logs/error.log;
error_log  logs/error.log  notice;
error_log  logs/error.log  info;
 
#pid        logs/nginx.pid;
 
 
events {
    worker_connections  1024;
}
 
 
http {
    # gitlab 服務(wù)地址和端口
    upstream gitlab {
        server 10.53.1.234:8081;
    }
 
    server {
        listen 10.53.1.234:80;
        server_name private.gitlab.com;
 
        # 這里選擇重定向到https去
        rewrite ^(.*)$ https://${server_name}$1 permanent;
    }
    server {
        listen    443;
        server_name  private.gitlab.com;
 
        ssl on;
        ssl_session_cache        shared:SSL:10m;
        ssl_session_timeout      20m;
        ssl_session_tickets       on;
        ssl_certificate /etc/nginx/server/2650770_private.gitlab.com.pem;      # 自己ca簽發(fā)的
        ssl_certificate_key /etc/nginx/server/2650770_private.gitlab.com.key;  # 自己的私鑰
 
        location / {
            proxy_cache off;
            proxy_pass http://gitlab;
            access_log /var/log/nginx_access.log;
        }
        # GOPROXY,vgo download protocol協(xié)商軟件包的規(guī)范
        # 第一步就是獲取軟件包元數(shù)據(jù),格式如下,gitlab暫時不支持,所以需要nginx代理
        location ~* ^/[^/]+/[^/]+$ {
            if ($http_user_agent ~* '^go.*') {
                return 200 "!DOCTYPE html>head>meta content='$host$uri git ssh://git@$host:$uri.git' name='go-import'>/head>/html>";
            }
            proxy_cache off;
            proxy_pass http://gitlab;
        }
        # 具體協(xié)議原理請看這篇文章:http://www.bubuko.com/infodetail-3045365.html
        location ~* ^/(?holder>[^/]+)/(?project>[^/]+)/.*$ {
            set $goRedirect 'https://$host/$holder/$project?$args';
            access_log /var/log/nginx_access1.log;
            if ($http_user_agent ~* '^go.*') {
                return 301 $goRedirect;
            }
            proxy_cache off;
            proxy_pass http://gitlab;
        }
    }
 
}

athens.com (代理倉庫總?cè)肟冢┎渴鸷拖嚓P(guān)配置:

1、安裝golang環(huán)境

2、設(shè)置go環(huán)境,export GO111MODULE=on,export GOPROXY=http://private.athens.com

3、安裝athens

private.athens.com (私有倉庫代理)部署和相關(guān)配置:

1、安裝golang環(huán)境 和 git客戶端并配置免登陸

2、設(shè)置go環(huán)境,export GO111MODULE=on,export GOPROXY=direct

3、安裝athens

4、安裝nginx并配置nginx,相關(guān)配置如下:

#user  nobody;
worker_processes  1;
 
events {
    worker_connections  1024;
}
 
http {
    server {
        listen 80;
    
        # 外部的依賴轉(zhuǎn)發(fā)到外面的go proxy
        location / {
            proxy_pass https://goproxy.io;
            #proxy_pass https://athens.azurefd.net;
        }
        # 內(nèi)部依賴的go proxy,也就是上面啟動的athens
        # github的依賴也可以走本地的go proxy,可以做緩存
        location ~ /(private\.gitlab\.com)/ {
            # 私有倉庫跳轉(zhuǎn)到私有athens 服務(wù)
            proxy_pass http://localhost:3000;
            access_log /var/log/nginx_access.log;
        }
    }
}

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • Golang中switch語句和select語句的用法教程
  • Golang 編譯成DLL文件的操作
  • golang調(diào)用c實(shí)現(xiàn)的dll接口細(xì)節(jié)分享
  • Golang如何調(diào)用windows下的dll動態(tài)庫中的函數(shù)
  • 完美解決golang go get私有倉庫的問題
  • golang gopm get -g -v 無法獲取第三方庫的解決方案
  • Golang: 內(nèi)建容器的用法
  • golang switch語句的靈活寫法介紹

標(biāo)簽:吐魯番 雞西 蘭州 汕頭 重慶 銅川 欽州 梅河口

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《golang實(shí)踐-第三方包為私有庫的配置方案》,本文關(guān)鍵詞  golang,實(shí)踐,第三方,包,為,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《golang實(shí)踐-第三方包為私有庫的配置方案》相關(guān)的同類信息!
  • 本頁收集關(guān)于golang實(shí)踐-第三方包為私有庫的配置方案的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    一区二区三区午夜探花| 亚洲国产另类精品专区| 国产乱人伦精品一区二区在线观看| 亚洲资源中文字幕| av电影免费在线| 国产精品久久久久永久免费观看| 97久久久久久| 中文字幕一区二区av| 在线观看av的网址| 日韩欧美在线视频播放| 国内精品视频在线播放| 欧美成人亚洲成人日韩成人| www.成人在线视频| 亚洲最新av网站| 久久男人天堂| 亚洲精品一二三四| 国产精品无码粉嫩小泬| 国产理论电影在线观看| 日本一区二区三区四区五区| 精品国产乱码久久久久久蜜坠欲下| 午夜精品久久久久久久99黑人| 国产又猛又黄的视频| 精品人妻一区二区三区换脸明星| 成人看片视频| 精品少妇一区二区三区免费观| 免费成人高清在线视频| 欧美顶级xxxxbbbb| 黄色网址免费在线观看| 亚洲免费一级电影| 男女小视频在线观看| 国产自产女人91一区在线观看| 午夜精品一区二区三区视频免费看| 成人p站proumb入口| 久久久久久高潮国产精品视| 欧美性xxxx极品hd欧美| 少妇特黄a一区二区三区| 激情小说图片视频| 蜜桃视频免费网站| 亚洲天堂男人天堂女人天堂| 国产精品综合在线视频| 久久亚洲成人av| 成人在线看片| 国产一区二区三区影视| 国产麻豆视频在线观看| 91牛牛免费视频| 嫩草在线播放| 在线观看亚洲一区二区| 国产精品高潮在线| 91国在线精品国内播放| 在线日韩中文字幕| 日韩激情视频一区二区| 国产香蕉一区二区三区在线视频| 国产极品精品在线观看| 久久精品国产亚洲夜色av网站| 亚洲无码精品在线观看| 久久av红桃一区二区禁漫| 69174成人网| 香蕉影视欧美成人| 欧美精品日韩综合在线| 亚洲第一精品影视| 精品三级av在线| 91日韩视频| 西游记1978| 欧美精品日韩综合在线| 非洲黑人最猛性xxxx交| 欧美人与性动交α欧美精品图片| 香蕉521av成人网| 精品人妻一区二区免费| 亚洲小说欧美另类社区| 精品小视频在线| 日韩一级黄色av| 一区二区三区四区视频精品免费| 久9re热视频这里只有精品| 日本不卡视频一区二区| 中文字幕有码在线视频| 国产美女精品在线观看| 欧美综合视频在线观看| 粉嫩aⅴ一区二区三区| 伊人成年综合网| 2019中文字幕在线| 欧美伦理视频网站| 精品肉辣文txt下载| 中文字幕久久精品一区二区| 精品久久一区二区三区蜜桃| 天天综合网在线观看| 日韩一级在线播放| 一区二区三区欧美激情| 国产精品玖玖玖在线资源| 国产午夜手机精彩视频| 亚洲一区二区三区乱码aⅴ蜜桃女| 亚洲精品久久久久中文字幕二区| 久久精品国产一区二区三区日韩| 精品人伦一区二区三电影| 碰碰视频免费| 久久久久久综合| 日韩av电影中文字幕| porn亚洲| 五月婷中文字幕| 亚洲一区二区在线免费观看视频| 欧美午夜精品久久久| 国产精品久久| 四虎精品一区二区三区| 亚洲精品久久久北条麻妃| 啦啦啦中文在线观看日本| 97国产成人高清在线观看| 精品国产av 无码一区二区三区| 一级二级三级欧美| 色婷婷香蕉在线一区二区| 88国产精品欧美一区二区三区| 精品免费视频| 欧美精品密入口播放| 影视亚洲一区二区三区| 日韩一级免费片| 99精品一区二区三区| 国产精品成人播放| 欧美自拍视频在线| 日韩高清中文字幕一区| 男人添女人下部高潮视频在线观看| 欧美在线免费视屏| 欧美亚洲国产精品久久| 国产精品熟女一区二区不卡| 二区三区四区视频| 久久aⅴ乱码一区二区三区| 91香蕉国产线在线观看| 男人天堂综合网| 日韩一区二区三区精品视频| 色综合久久88色综合天天6| 97人人澡人人爽91综合色| 日本成人性视频| 大肉大捧一进一出好爽动态图| 麻豆九一精品爱看视频在线观看免费| 自拍视频亚洲| 国产精品资源网站| 国产超碰人人爽人人做人人爱| 中文字幕第一区二区| 国产乱妇无码大片在线观看| 国产一区在线播放| 夜夜摸夜夜操| 亚洲天堂a在线| 小说区图片区综合久久亚洲| 亚洲欧美日韩不卡| 五月婷婷在线播放| 国产中文欧美日韩在线| 天天爽天天爽夜夜爽| www.国产毛片| 大地资源二中文在线影视观看| 国产传媒久久久| 国产一区 二区 三区一级| 欧美xxxx做受欧美88bbw| 国产亚洲视频中文字幕视频| 97福利电影| 福利片一区二区三区| 亚洲欧美成人精品| 免费又爽又黄禁片视频1000片| 丝袜亚洲另类欧美重口| 亚洲成人av一区二区| 在线观看国产高清视频| 91福利在线视频| 久久精品香蕉视频| wwwav网站| 国产麻豆午夜三级精品| 亚洲免费成人| 一级黄色免费视频| 欧美一区二区三区男人的天堂| 一级黄色毛毛片| 欧洲杯足球赛直播| 女~淫辱の触手3d动漫| 国产精品免费网站在线观看| www91在线观看| 日韩欧美中文第一页| 欧美丰满高潮xxxx喷水动漫| 亚洲熟妇无码一区二区三区导航| 人妻少妇精品无码专区二区| 欧美性猛交xxxx免费看漫画| 亚洲成av人**亚洲成av**| av资源在线观看免费高清| 不卡免费追剧大全电视剧网站| 精品免费日韩av| 91成人国产精品| 欧美午夜电影在线观看| 91精品国产91久久久久久吃药| 国产亚洲一级| 黄色av网站在线| 奇米影视7777精品一区二区| 欧美国产日韩亚洲一区| 国产不卡网站| 久热中文字幕在线| 曰本三级在线| 蜜桃av一区二区三区电影| 亚洲三级免费看| 日韩av在线看| 久草在线在线精品观看| 日本少妇高潮喷水视频| 97久久精品视频| 亚洲欧美在线人成swag| 成人黄色在线播放| 亚洲 小说区 图片区| 成人一区二区三区仙踪林| 亚洲第一网站免费视频| 永久亚洲成a人片777777| 亚洲高潮无码久久| 一区 二区 三区| 成人看av片| 亚洲国产婷婷| 欧美一区二区三区在线视频| 亚洲人www| 中文字幕不卡在线播放| 日韩极品视频在线观看| 日韩欧美精品电影| 成人三级视频在线观看| 国产成人无码av| 日韩高清一级| 人妻少妇一区二区三区| 一区二区三区免费观看| 在线观看免费视频黄| 久久精品国产综合| 中文字幕视频一区二区三区久| 国产精品久久中文字幕| 亚洲高清久久久| 中文文字幕文字幕高清| 国产精品沙发午睡系列990531| 欧美无遮挡国产欧美另类| 999精彩视频| 亚洲色图欧美自拍| 久久一区欧美| 韩国av电影免费观看| 国产精品美女www| 5g影院天天爽成人免费下载| 欧美爱爱视频免费看| 亚洲午夜精品17c| 欧美成人精品一区二区| 天天干中文字幕| 久久九九国产精品怡红院| 久久综合久久综合这里只有精品| 国产综合网站| 欧美激情第六页| 久久成人av少妇免费| 一本到高清视频免费精品| 三级在线观看网站| 欧美激情 亚洲| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 国产精品国产亚洲精品看不卡15| 日本三级在线观看网站| 日韩三级视频在线| 色综合久久中文| 国产精品专区第二| 美女又黄又免费的视频| 国产成+人+综合+亚洲欧美| 中文精品久久久久人妻不卡| 潘金莲一级淫片aaaaa| 久久中文字幕一区二区三区| 国产成人天天5g影院| 欧美在线你懂的| 色婷婷精品视频| 久久精品xxxxx| 国产伦理吴梦梦伦理| 手机在线看片日韩| 捆绑紧缚一区二区三区在线观看| 日韩欧美视频| 99热这里只有精品在线| 国产专区一区二区三区| 亚洲最大成人在线观看| 国产精品久久久久久久久久辛辛| 国产夫妻性生活视频| 嫩草香蕉在线91一二三区| 亚州男人的天堂| 性生交免费视频| 国产三级第一页| 丰满白嫩尤物一区二区| 欧美四级剧情无删版影片| 亚洲中文字幕久久精品无码喷水| 久久国产精品久久久久久小说| 欧美激情黄色片| 日韩欧美在线视频免费观看| 亚洲成人免费观看| 玖玖在线免费视频| 中国女人真人一级毛片| 被黑人猛躁10次高潮视频| 欧美乱大交xxxxx潮喷l头像| 天堂资源在线观看| 美美女免费毛片| 欧美欧美一区二区| 国产精品日韩欧美综合| 91精品小视频| 高跟丝袜欧美一区| 欧美日韩国产高清一区二区| 国产一级久久久久毛片精品| 操女生的网站| 日本一区不卡| 扒开伸进免费视频| 精品少妇一区二区三区| 精品国产一区二区三区久久久蜜月| 亚洲欧美日本免费| 艳妇乳肉豪妇荡乳av| 日韩不卡在线视频| 欧美日韩视频专区在线播放| 男女羞羞电影免费观看| 91.com视频| 亚洲一卡二卡三卡四卡无卡网站在线看| 日韩免费在线播放| 免费在线观看的毛片| 欧美巨大另类极品videosbest| 久草在.com| 蜜桃网站在线观看| 51国产偷自视频区视频| 99精品国产99久久久久久白柏| 日韩视频中文字幕| 国产资源在线视频| 一区二区三区免费高清视频| 亚洲精选一区二区| 欧美伊人精品成人久久综合97| 波多野结衣视频在线播放| 欧美一区1区三区3区公司| 高清成人在线观看| 26uuu亚洲婷婷狠狠天堂| 亚洲免费在线播放| 亚洲精品久久久久久下一站| 成人欧美精品久久久久影院| 精品成人a区在线观看| 四虎影视成人永久免费观看视频| 精品少妇一区二区30p| 国产精品乱人伦| 中文字幕在线一区二区三区| 国产精品老牛影院在线观看| 极品魔鬼身材女神啪啪精品| 久久久精品欧美丰满| 国产黄色大片在线观看| 日韩欧美在线国产|