大家在开发中一般使用的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. sping data jpa 共享主键 OneTonOne 延时加载

    当我们使用spring boot创建项目时,系统默认使用的是如下parent. <parent> <groupId>org.springframework.boot</g ...

  2. linux基本命令之文件浏览(cat,more,less,tail,head),文件操作命令(cp,mv,rm,find)

    linux文件浏览,文件操作命令 文件管理之文件浏览命令 1.cat命令:显示文本文件所有内容 格式:cat 文件名 适用场景:适合只有少量数据的文件,例如只有几行内容的可以使用此命令. 2.more ...

  3. HTML-图片和多媒体

    1.图片和多媒体 (1)    图片:img元素 src 属性:图片路径: alt 属性:图片无法显示时使用的替代文字: title:鼠标悬停时显示的文字 : <img src="图片 ...

  4. ResultEntity

    就是封装的一个map集合  省时省力好用 package com.ujy.utils; import java.util.HashMap; import java.util.Map; public c ...

  5. CentOS7升级gcc

    CentOS7.5升级gcc到8.3.0版本 1.下载源码包 cd /usr/local/src wget http://ftp.tsukuba.wide.ad.jp/software/gcc/rel ...

  6. LoadPicture函数用法示例

    VB语言中LoadPicture函数用法示例: 本例使用 LoadPicture 函数将图片加载到窗体的 PictureBox 控件并从控件上清除掉该图片. 要试用此例,将 PictureBox 控件 ...

  7. 苹果ios开发

    苹果上架:https://blog.csdn.net/pcf1995/article/details/79650345

  8. vue的v-for循环渲染列表时,解决没有:key警告问题(:key的作用)

    :key是为vue的响应式渲染提供方法,在列表中单条数据改变的情况下,可以进行单独渲染,减少页面资源消耗. 当前页面如果有列表渲染v-for,并且在v-for的循环标签中没有:key元素时,控制台会出 ...

  9. flask_session

    flask_session和Flask中的session相比,比较简单,省去了 secret_key 首先,导入flask_session 模块  from flask_session import ...

  10. Linux学习-通过loganalyzer展示MySQL中rsyslog日志

    一.实验环境 系统:CentOS7.6 软件包:apache,php,mariadb-server (都是基于光盘yum源) 源码包:loganalyzer-4.1.7.tar.gz (http:// ...