制作gogs Docker镜像

文章背景:由于网络原因访问Github经常不稳定,准备在公司部署一套基于Docker的Gogs服务,用于定时同步Github上的项目。
公司网络环境不能直接使用gogs项目中原本的构建流程,同时为了节省构建过程中下载依赖包花费的时间,考虑将其Dockerfile中编译环境和运行的构建步骤拆出来,制作成两个镜像放在私有仓库中,然后再基于制作好的镜像构建gogs镜像。本文详细记录了这一过程。

Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs
能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。
----gogs官方网站:https://gogs.io/docs/

官方文档说使用二进制安装非常方便,只需要下载编译好的二进制文件,启动服务就行。
按照循序渐进的原则,先在windows中用二进制安装,预览看看gogs到底有一些什么功能,安装是不是真的简单。

一、在window下安装gogs

  1. 下载压缩包
    在网找到Windows系统对应的安装包下载地址
    Windows系统对应的安装包下载地址
  2. 将压缩包解压,得到以下文件内容:
    解压文件
    3.打开按win+R输入cmd打开命令行,cd进入gogs目录。
    例如我的gogs目录路径是D:\Program Files\gogs,首先执行D:回车进入D盘,再输入cd D:\Program Files\gogs,进入gogs目录
    进入目录
    4.启动gogs服务,执行指令gogs web:
    启动gogs服务
    看到以上提示说明gogs启动成功,打开浏览器访问 locahost:3000 就能看到gogs的页面了。
    gogsweb页面
    根据页面提示进行后续的安装步骤,主要是一些配置内容,配置好后点击立即安装
    如果配置了管理员账户,安装完成后自动登录到管理员账户中,否则跳转到登录页面,第一个注册用户为管理员账户。
    为了安装的方便,数据库可以直接使用SQLite3,这样就不需要另外安装数据库应用。
    windows上的安装步骤就到这里了,主要是为了看一下gogs是个什么应用,大概有一些什么功能。

二、在windos下从源码安装

1. 首先准备环境

本机为win10,需要安装go语言。
a. 安装GO语言参考文档:http://c.biancheng.net/view/3992.html,这里就不详细介绍了。
Go语言下载地址:官方 https://golang.google.cn/dl/中国Golang社区 https://studygolang.com/dl
b. 安装git:下载地址:https://git-scm.com/

2. 克隆gogs项目源码

在bash中执行指令:git clone --depth 1 https://github.com/gogs/gogs.git gogs
克隆gogs源码

3. 编译主程序

执行go build -o gogs 编译主程序
这个步骤会下载所有依赖。正常情况可以看到正在下载依赖包的输出内容:
下载依赖包
也可能会出现指令执行后反应的现象,导致这个问题的原因有两个:
a. 下载go模块速度慢;
b. gcc没正确安装。

  1. 下载速度慢,设置go代理解决:
    执行go env可以查看go配置,将其修改为七牛云 https://goproxy.cn/提供的代理:

    go env -w GO111MODULE=on
    go env -w GOPROXY=https://goproxy.cn,direct
    

    go 环境变量

  2. gcc没正确安装。
    gcc未安装报错:

    	cgo: C compiler "gcc" not found: exec: "gcc": executable file not found in %PATH%
    

    gcc 版本不正确报错:

    cc1.exe: sorry, unimplemented: 64-bit mode not compiled in
    

    gcc 位数不对

    安装GCC参考文档:https://blog.csdn.net/xia_2017/article/details/105545789
    下载地址:https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/
    下载64位x86_64-posix-seh压缩包,解压后将bin目录配置到环境变量的path中,执行gcc -v可以看到gcc信息:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值