我的私有仓库使用的是gitee(码云),需要进行一定的配置才能让其他golang服务引用。
目录:
(1).创建ssh公私钥
(2).gitee配置公钥
(3).测试应用私有仓库moudle的go服务
(1).创建ssh公私钥
可以参考gitee的文章:
生成/添加SSH公钥
https://gitee.com/help/articles/4181#article-header0
加密算法选择:ed25519
原因是:
ed25519是目前最安全、加解密速度最快的key类型,由于其数学特性,它的key的长度比rsa小很多,优先推荐使用。它目前唯一的问题就是兼容性,即在旧版本的ssh工具集中可能无法使用,但目前来说还没有人遇到。
ssh-keygen -t ed25519 -C "future@gitee.com"
默认将公私钥放在~/.ssh下。
会在~/.ssh下生成两个文件:
id_ed25519:私钥
id_ed25519.pub:公钥
私钥要一直保存在~/.ssh下,公钥配置在gitee上,同时另行保存公钥后将这个磁盘上的公钥删除,这样即使私钥泄漏也没用,更加安全,安全合规。
(2).gitee配置公钥
可以看到ed25519比rsa要短很多。
(3).测试应用私有仓库moudle的go服务
设置私服地址到环境变量:可以设置多个私服,用逗号分隔。
export GOPRIVATE=gitee.com
分别执行:
go mod init
go mod tidy (如果是go1.16 ,需要执行:go mod tidy -compat=1.17)
这样就可以下载依赖自私服中的go moudle了。