nexus 3.17.0 新版本对于go 包管理的支持是基于go mod 的,同时我们也需要一个athens server
然后在nexus 中配置proxy 类型的repo

参考配置

  • 来自官方的配置图

  • 说明
    就和上边说的一样,我们需要一个athens server,nexus 对于go mod 的支持就是通过配置proxy到athens server
    同时为了使用需要配置GOPROXY 环境变量

环境搭建

  • docker-compose 文件
version: "3"
services: 
  nexus:
    image: sonatype/nexus3:3.17.0
    ports: 
    - "80:8081"
    volumes: 
    - "./nexus-data:/nexus-data"
  athens:
    image: gomods/athens:latest
    ports: 
    - "3000:3000"
  • 配置go proxy

golang 代码使用proxy

  • 配置host 文件
    因为localhost 有问题,所以简单配置了一个127.0.0.1 dalongrong.com
 
127.0.0.1  dalongrong.com
  • 简单go mod 项目
go mod init github.com/rongfengliang/nexus-mod
go: creating new go.mod: module github.com/rongfengliang/nexus-mod
  • 一个简单的http server 代码
main.go:
package main
import (
    "fmt"
    "net/http"
    "github.com/urfave/negroni"
)
func main() {
    mux := http.NewServeMux()
    mux.HandleFunc("/", func(w http.ResponseWriter, req *http.Request) {
        fmt.Fprintf(w, "Welcome to the home page!")
    })
    n := negroni.Classic() // Includes some default middlewares
    n.UseHandler(mux)
    http.ListenAndServe(":8000", n)
}
  • 配置GOPROXY
export GOPROXY=http://dalongrong.com/repository/golang/
  • 添加缺少的依赖
go mod tidy
  • 构建
go build
  • 运行
./nexus-mod

效果

├── go.mod
├── go.sum
├── main.go
└── nexus-mod
  • nexus 系统proxy 的信息

说明

以上是一个简单的学习试用,同时也支持group 类型的,还是很不错的

参考资料

https://help.sonatype.com/repomanager3/release-notes/2019-release-notes#id-2019ReleaseNotes-RepositoryManager3.17.0 
https://help.sonatype.com/repomanager3/formats/go-repositories 
https://github.com/rongfengliang/nexus-golang-package

nexus 3.17.0 做为golang 的包管理工具的更多相关文章

  1. Golang学习--包管理工具glide

    上一篇文章中我们已经成功的运行了go的代码,这是我们迈出的最基础的一步. 一个项目通常会依赖很多外部的库,当依赖的库比较多的时候,手工管理就会比较麻烦,这个时候就需要包管理工具出场了,帮你管理好所有依 ...

  2. Golang Vendor 包管理工具 glide 使用教程

    Glide 是 Golang 的 Vendor 包管理器,方便你管理 vendor 和 verdor 包.类似 Java 的 Maven,PHP 的 Composer. Github:https:// ...

  3. [golang] Glide 包管理工具,在windows10 64位系统上的bug修复方案

    bug重现 [ERROR] Unable to export dependencies to vendor directory: Error moving files: exit status 1. ...

  4. golang包管理工具及环境管理工具;如何下载外网的依赖包

    简介: golang的包管理工具类似于java的maven.python的pip.js的npm,可以实现依赖包的统一管理:有很多:govendor.godep.glide,挑一个自己喜欢的用吧.mac ...

  5. golang包管理工具

    软件开发中,不可避免的会使用到第三方库,因此包管理工具可以极大的方便开发者管理第三方依赖,避免掉入"依赖地狱". 作为google强大背书的golang语言,golang官方包管理 ...

  6. Golang包管理工具glide简介

    Golang包管理工具glide简介 前言 Golang是一个十分有趣,简洁而有力的开发语言,用来开发并发/并行程序是一件很愉快的事情.在这里我感受到了其中一些好处: 没有少了许多代码格式风格的争论, ...

  7. PyRedisAdmin v1.0 Beta 发布,Redis 在线管理工具 - 开源中国社区

    PyRedisAdmin v1.0 Beta 发布,Redis 在线管理工具 - 开源中国社区 PyRedisAdmin v1.0 Beta 发布,Redis 在线管理工具

  8. nexus 3.17.0 简单试用

    老样子,使用docker-compose 运行 环境准备 docker-compose 文件 version: "3" services: nexus: image: sonaty ...

  9. nexus 3.17.0 简单说明

    nexus 在6.24 发布了3.17.0 ,同时包含了好多新的特性 以下为一些主要变动: routing rules 可以增强repo 的安全 apt repo 格式的支持 可以方便的为ubuntu ...

随机推荐

  1. CLRS10.2-7练习 - 翻转单向列表

    要求: Give a Θ(n)-time nonrecursive procedure that reverses a singly linked list of nelements. The pro ...

  2. 三伏天里小试牛刀andriod 开发 #华为云·寻找黑马程序员#【华为云技术分享】

    2019年07月,北京,三伏天,好热啊.越热自己还越懒得动换(肉身给的信号),但是做为产品经理/交互设计师的,总想着思考些什么(灵魂上给的信号),或者是学习些什么,更有利于将来的职业发展吧,哈哈哈.工 ...

  3. Window中C++进行精确计时的方法

    嗯,程序员一个永恒的追求就是性能吧? 为了衡量性能,自然需要计时. 奈何无论C标准库还是C++标准库,因为通用性的考虑,其time API精度都不高.基本都是毫秒级的. 所以如果要真正精确地衡量程序的 ...

  4. Golang ---testing包

    golang自带了testing测试包,使用该包可以进行自动化的单元测试,输出结果验证,并且可以测试性能. 建议安装gotests插件自动生成测试代码: go get -u -v github.com ...

  5. Oracle解决锁表语句与批量生成解锁语句

    --以下几个为相关表SELECT * FROM v$lock;SELECT * FROM v$sqlarea;SELECT * FROM v$session;SELECT * FROM v$proce ...

  6. pandas-10 pd.pivot_table()透视表功能

    pandas-10 pd.pivot_table()透视表功能 和excel一样,pandas也有一个透视表的功能,具体demo如下: import numpy as np import pandas ...

  7. js utc转当地时间

    javascript utc转当地时间 后台传过来的时间:2019-07-03T01:39:51.691242+08:00 转成当地时间:2019-07-02 17:39:51 new Date(20 ...

  8. JavaScript之控制表单元素的值

    表单元素.value 获取表单元素的值 表单元素.value='这是修改后的值' 修改表单元素的值 案例: (1)html <input type="text" id=&qu ...

  9. 折叠面板实现,上传文件进度条,三级联选择器,多级联选择器, 利用layui实现

    首先贴出html代码 <form class="layui-form" action=""> <div class="layui-f ...

  10. day 10 预科

    目录 IPO 编程 面向对象编程 类和对象 对象 类 定义类 定义对象 定义类语法 定义对象 (实例化对象) 定制对象独有特征 LeetCode检测机制 面向过程编程:面向(对着)-->过程(流 ...