大家在开发中一般使用的git服务都是公司搭建好的,或者就是直接用gayhub提供的免费的仓库

如果想搭建一个自己的仓库的话怎么弄,这里给大家安利一款开箱即用的git托管服务:gogs。

gogs是基于Golang编写的,占用的资源非常的低,你有个树莓派就能跑,而且搭建非常容易,接下来开始演示如何搭建。

操作环境:阿里云ECS服务器配置:单核2GB内存 ;操作系统: CentOs 7 x64

注:本文操作全部基于yum进行安装,其他操作系统可自行更换对应指令

第一步:安装git

命令 yum install git 

效果如图

 第二步:下载gogs二进制文件

下载地址:https://gogs.io/docs/installation/install_from_binary

选择linux 64位的安装包,至于是下载zip还是tar根据自己的喜好,我这下载的tar

命令: wget  gogs 文件地址

也可以直接用浏览器下载下来再传到linux服务器上去,我就是这么干的,因为我发现在服务器上直接下载,网速快卡到它姥姥家去了

下载好之后,找一个自己喜欢的文件夹,把gogs的文件解压到那里,我这里演示直接放到了/home;

命令:

cd /home  切换目录到/home

tar -xvf gogs_0.11.91_linux_amd64.tar.gz   (解压gogs压缩包,注意压缩包名要用自己下载好的,别直接copy我的命令,偷懒一时爽,菊花火葬场)

解压完以后,会出现一个gogs文件夹,进入到里面,执行命令:   ./gogs web

gogs就启动了,并且监听了3000端口,此时你访问3000端口就可以看到页面

我的服务器已经对外开放了3000端口,直接用ip:3000访问,会出现gogs的第一次配置页面,但是我们先不要配置,因为现在是前台启动模式,只要你的shell一关gogs就关了,所以接下来我们配置

一下后台启动。

第三步:配置后台运行

我们在 gogs/scrpts/systemd 下找到gogs的服务文件,我这一步一步的进是为了方便读者阅读,正常装的时候可以一步到位

然后我们把这个服务文件放到 /etc/systemd/system下

但是在移动前,我们需要先对这个service文件更改一下,把里面的工作路径和执行命令改成正确的

WoringDirectory 是你gogs的目录,ExeStart是服务启动时会执行的命令,都换成你自己的路径,用户我用的root

不知道用哪个用户用root就对了老弟

然后把这个gogs.service 复制到/etc/systemd/system文件下

执行以下命令

systemctl enable gogs.service

systemctl start gogs

systemctl status gogs

出现下图说明你已经成功的安装好了gogs,并且配置好了守护进程,访问3000端口,会出现之前的页面

访问ip+端口3000进入设置页面,进行gogs的基础设置

gogs会把你的提交记录记录在数据库中,gogs支持很多数据库,MySql pgSQL.....,并且自带了SqlLite,如果你不想装其他数据库的直接用默认的sqlLite就行,亲民的要死

我这里用的是Mysql ,不知道linux下怎么安装mysql的可以参考我这篇文章:https://www.cnblogs.com/Tassdar/p/9583790.html

配置好数据库之后无脑下一步就可以了,安装好之后的页面是这样的

 第四步:配置反向代理


直接通过ip+端口这宗方式访问也不是不行,就是看起来有点low B,所以作为一个专业的程序员,我们还是专业一点,配个域名

首先解析一个二级域名出来  gogs.xiaocui.site

然后安装nginx

命令:

yum install nginx

systemctl start nginx

systemctl status nginx

出现下图说明你已经ok了,如果还不行,自行百度。

进到 /etc/nginx 目录下修改nginx.conf ,配置反向代理

添加一个新的配置节点,或者添加一个新的配置文件都行,看你怎么喜欢怎么来

配置完之后执行 nginx -t 检查配置文件,如果不是successful,按照报错内容和行号去检查问题

然后执行 nginx -s reload  重新加载配置文件

最后访问域名,完美。

使用GOGS搭建自己的Git托管的更多相关文章

  1. 阿里云Linux CentOS 7 Docker部署使用gogs搭建自己的git服务器

    一.前言 Git是目前优秀和流行的源代码管理工具.而GitHub是一个面向开源及私有软件项目的托管云平台,但开源免费,私有收费.而公司出于商业化等目的需要搭建自己的源代码托管服务器.通过网上了解Gog ...

  2. 使用Gogs搭建自己的Git服务--windows

    Gogs介绍 官方网站:传送门... 使用Gogs可以搭建一个自己的私有Git服务. 有时候我们有一些有些不想公开的私人小项目或者练习项目,源码想放在GitHub.码云(一直觉得这名字有点蹭知名度)这 ...

  3. 使用 Gogs 搭建自己的 Git 服务器

    安装过程分为这些步骤: 新建用户: 下载源码编译 / 下载预编译二进制打包: 运行安装: 配置调整: 配置 nginx 反向代理: 保持服务运行: 注意,这里默认你已经安装好了 MySQL 服务器和 ...

  4. gogs搭建git服务教程

    使用gogs搭建自己的git服务!!! 一.GIT服务器搭建方式 上一节课我们讲过GIT是一个分布式版本管理系统,既然是分布那么必定会涉及远程通信,那么GIT是采用什么协议进行远程通信的呢? git支 ...

  5. Docker+Gogs搭建个人Git服务

    欢迎 经常使用Github的我,Github它功能强大,操作简单,不用FQ,所以大家会使用Github进行代码托管,但是,Github的私仓收费的,而且对于普通个人用户来说,价格也不便宜.很多人搭建自 ...

  6. 使用Gogs搭建Git服务器

    Git现在基本上已经代替SVN成为主流的源码管理工具了,我在之前的文章使用GIT进行源码管理--GIT托管服务中介绍过一些国内外的主流在线Git服务,虽然这些在线的Git服务大多非常好用,但是有的时候 ...

  7. Windows 使用 Gogs 搭建 Git 服务器(转)

    Windows 使用 Gogs 搭建 Git 服务器   随便说两句 之前有使用 Gitblit 在Windows搭建Git服务器,用的也挺好的,可能安装起来略麻烦一点.现在全用 Gogs 在wind ...

  8. 用gogs搭建git服务器

    Gogs 是一款极易搭建的自助 Git 服务. Gogs 的目标是打造一个最简单.最快速和最轻松的方式搭建自助 Git 服务.使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 G ...

  9. 搭建自己的git服务器--gogs

    //@desn:搭建自己的git服务器--gogs //@desn:码字不宜,转载请注明出处 //@author:张慧源  <turing_zhy@163.com> //@date:201 ...

随机推荐

  1. 通过编写串口助手工具学习MFC过程——(十)UpdateData()用法和编辑框的赋值、取值

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  2. Quartz.NET | 佳佳的博客

    原文:Quartz.NET | 佳佳的博客 Quartz.NET 是一个定时计划任务的框架,支持 .NET Core. 本文示例代码大部分来自于官方教程:Quartz.NET - Quartz.NET ...

  3. 小程序之如和使用view内部组件来进行页面的排版功能

    这篇文章主要介绍了关于小程序之如和使用view内部组件来进行页面的排版功能,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 涉及知识点: 1.垂直排列,水平排列 2.居中对齐 示例: 1 ...

  4. Vue-Quill-Editor 富文本编辑器

    通俗来说:富文本,就是比较丰富的文本编辑器.普通的框只能输入文字,而富文本还能给文字加颜色样式等. 富文本编辑器有很多,例如:KindEditor.Ueditor.但并不原生支持vue 但是我们今天要 ...

  5. Site error: the ionCube PHP Loader needs to be installed.解决办法

    问题描述: 有些模块的作者为了保护代码而采用ionCube加密的代码,所以这里必须给服务器装上这个php的扩展,就好像以前的zend一样 解决办法: http://bbs.52jscn.com/thr ...

  6. layoutSubviews何时调用的问题(原文:http://www.cnblogs.com/pengyingh/articles/2417211.html)

    今天跟旺才兄学习了一下UIView的setNeedsDisplay和setNeedsLayout方法.首先两个方法都是异步执行的.而setNeedsDisplay会调用自动调用drawRect方法,这 ...

  7. jenkins git项目clean before checkout 和 wipe out repository & force clone

    clean before checkout:会先执行一遍git clone,删除一些untracked文件和目录,比如删除上一次打包编译产生的文件 wipe out repository & ...

  8. django搭建一个小型的服务器运维网站-查看和修改服务器配置与数据库的路由

    目录 项目介绍和源码: 拿来即用的bootstrap模板: 服务器SSH服务配置与python中paramiko的使用: 用户登陆与session; 最简单的实践之修改服务器时间: 查看和修改服务器配 ...

  9. [CF1161C] Thanos Nim

    传送门 题意:\(2n\)堆石子,每堆\(a_i\)个,先手每次选中\(n\)堆石子,并从每堆中拿走任意个(可以不同).轮到某人时不足\(n\)堆则判负,问先手是否必胜.\(n\leq25,a_i\l ...

  10. axios 各种请求方式传递参数

    get delete 方法较为不同 注意:每个方法的传参格式不同,具体用法看下方 get请求方式将需要入参的数据作为 params 属性的值,最后整体作为参数传递 delete请求方式将将需要入参的数 ...