docker环境使用Athens搭建golang私服

褪色的记忆1994 · · 1788 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

golang的依赖下载不管是从github还是golang.org,经常都遇到很慢或者干脆失败的问题,找了许多方法,都不太方便或者有问题。不过从golang v1.11版本之后支持代理,可以通过代理的方式从私服或者速度相对较快的镜像站上下载依赖。

搭建golang 私服

这里使用的是名为Athens的开源 go语言包管理服务,详细的介绍可以参考 https://docs.gomods.io/

为了快捷方便的使用,这里推荐docker的方式进行部署,通过运行docker run -d -v ./data:/var/lib/athens -e ATHENS_DISK_STORAGE_ROOT=/var/lib/athens -e ATHENS_STORAGE_TYPE=disk --name athens-proxy --restart always -p 3000:3000 gomods/athens:latest即可启动服务

或者通过docker-compose编排服务,通过下面的docker-compose.yml文件,运行docker-compose up -d即可启动

version: '2'
services:
  athens:
    image: gomods/athens:latest
    ports:
      - "3000:3000"
    logging:
      driver: "json-file"
      options:
        max-size: 10m
        max-file: "5"
    restart: always
    volumes:
      - ./data:/var/lib/athens
    environment:
      ATHENS_DISK_STORAGE_ROOT: /var/lib/athens
      ATHENS_STORAGE_TYPE: disk

设置golang代理

完成上诉步骤之后,还需要设置环境变量启用golang的代理功能,不同操作系统的设置方式可自行修改,将变量GO111MODULE设置为onGOPROXY设置为私服的地址http://IP:3000
若是不想自行搭建私服,也可使用一些现成的镜像站https://goproxy.io,https://athens.azurefd.net,或者国内阿里云的https://mirrors.aliyun.com/goproxy/,只要将环境变量GOPROXY修改成相应地址即可


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:褪色的记忆1994

查看原文:docker环境使用Athens搭建golang私服

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1788 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传