文档章节

使用gogs搭建git服务器记录

加大装益达
 加大装益达
发布于 2017/04/03 12:11
字数 976
阅读 56
收藏 1

原文链接

昨晚半夜网上一个朋友找到我,说是使用gogs搭建git服务器,使用ssh操作要免密啥啥啥的~也没描述清楚。就是要ssh的方式,提交时候不要账号密码,心想这不就三下的事情吗?结果折腾到晚上一点,没好~敢肯定的是他按照网上的毒教程,被坑了!还是自己本地虚拟机配置一下吧~

环境说明

  • 本机Ubuntu16.10
  • virtualbox上运行的是Centos7
  • 虚拟机中mysql已经安装好
  • 虚拟机中firewall已禁用,安装了iptables
  • 虚拟机中已经安装git

步骤

  • 去gogs网站下载,这里下载的是0.10.18版本,文件名是linux_amd64.zip
  • mysql建立gogs数据库
  • 新建用户名字为git的用户(用户目录/home/git)
  • 解压下载的文件,然后运行程序
  • 配置,安装
  • 现在已经可以访问了,也可以使用http方式进行clone和提交了
  • 配置ssh方式

下载gogs

去gogs网站下载,https://dl.gogs.io/ ,我下载的是0.10.18,linux 64位版本。

建立gogs数据库

在mysql中建立gogs数据库。

新建git用户

在虚拟机Centos中新建一个git用户。

  • 创建git组:sudo groupadd git
  • 创建git用户,分到git组中:sudo useradd -g git git
  • 设置git用户的密码:sudo passwd git

接下来切换到刚才新建的git用户,一定要切换到这个git用户!!!!

切换用户:su git

解压文件,运行

现在已经切换到git这个用户了,切记一定要切换到git这个用户才能执行以下步骤。

首先进入/home/git目录下,将下载的文件解压到/home/git目录下并重新命名,我这里是命名为gogs。然后进入gogs文件夹下,运行./gogs web,应该没啥错。

配置,安装

上面运行完成之后,打开浏览器输入:http://localhost:3000/install ,就可以看到安装配置页面了,里面配置根据自己需要配置(请先阅读文档了解清楚了,再自定义配置。)我这里填了mysql的密码,其他基本都是默认值。点击保存,有可能会提示git的path问题,请安装git!

测试http方式

现在已经可以访问了,访问:http://localhost:3000 不出意外,可以看到页面了。接下来需要注册一个用户,然后登录,添加一个仓库,在局域网中使用http的方式clone,我猜应该没啥意外情况。我这里是http://192.168.1.104:3000/dachengxi/gogs-test.git,你的根据情况来。

使用ssh方式

首先需要在你的机器上生成ssh公钥:ssh-keygen -t rsa -C "your_email@example.com",各种回车之后完成,生成的文件在你的用户主目录下的.ssh文件夹下,其中id_rsa.pub文件中的内容是我们需要的。打开此文件,复制所有内容。

然后打开gogs页面,点击右上角头像,找到用户设置,然后选择管理SSH密钥,在这里添加一个密钥,名字随便输,下面内容是你刚才复制的那个id_rsa.pub文件中的内容,添加进去保存,就好了。(其实这一步就是在你git用户主目录下的.ssh文件夹下生成一个叫做authorized_keys的文件,里面内容就是上面你添加的内容)。

测试ssh方式

上面的步骤没出啥错,现在已经可以使用,我这里是git@192.168.1.104:dachengxi/gogs-test.git,你的根据自己情况来定。

其他

其他各种高级功能不做讨论,请自己找文档找文章找自己!

请确认虚拟机防火墙开放了3000端口,22端口。

请确认git已经安装。

请确认你运行gogs的时候,是你新建的git用户。

© 著作权归作者所有

加大装益达
粉丝 31
博文 83
码字总数 138659
作品 0
浦东
高级程序员
私信 提问
Webhook实践 —— PHP自动部署

前言:最近在研究git自动部署项目,然后知道可以通过webhook实现自动部署的功能,查了一些文章,大多讲的是根据官网的方法用Node.js进行自动部署。线上服务器已经在跑php,想着能不能直接用p...

xiaozhenkai
2017/07/21
0
0
docker-compose安装gogs,实现GitHub代码版本管理服务

gogs简介 由于GitHub私服需要钱,所以自己搭建了类似GitHub的代码版本管理系统。 docker-compose方式来安装gogs 通过docker-compose方式来安装gogs,好处是方便管理。以下是从刚装好Centos ...

谢思华
03/07
233
0
阿里云ubuntu14.4上部署gogs

以前曾经在centos上部署了gitlab,但因为买的配置比较低,实际效果并不理想,经常卡机。而且,gitlab配置相当麻烦,需要依赖很多被墙包支持。最近在用golang搞开发,顺道发现了gogs这款git管...

fotomxq
2016/12/22
285
0
CentOS 7 搭建 gogs Git 服务器

CentOS 7 搭建 gogs Git 服务器 本地环境如下: Linux 系统环境为:CentOS Linux release 7.4.1708 (Core) MySQL 版本为: mysql Ver 14.14 Distrib 5.7.23, for Linux (x86_64) using EditL......

削个椰子皮_给个梨
05/01
80
0
极易搭建的自助 Git 服务--Gogs

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

无闻
2014/03/24
82.5K
33

没有更多内容

加载失败,请刷新页面

加载更多

前端面试题汇总

一. HTML常见的兼容性 1.HTML5 标签在低版本浏览器不兼容 解决办法:使用html5shiv库,引入下列语句 <!--[if lte IE 8]> <script src="https://cdn.bootcss.com/html5shiv/r29/html5.js"></sc......

蓝小驴
42分钟前
10
0
OSChina 周四乱弹 —— 我气的脸都黑了!

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 小小编辑推荐《Red Battle》- 高橋李依 / 豊崎愛生 《Red Battle》- 高橋李依 / 豊崎愛生 手机党少年们想听歌,请使劲儿戳(这里) @丶Lion ...

小小编辑
55分钟前
692
24
找OSG教程, B站就有

https://www.bilibili.com/video/av64849038?from=search&seid=11632913960900279653

洛克人杰洛
今天
6
0
学习记录(day07-Vue组件、自定义属性、自定义事件)

[TOC] 1.1.1什么是组件 一个vue文件就是一个组件 组件将html标签/css样式/对应JS打包成一个整体,也可以理解钻进一个具有样式和特效的自定义标签。 一、编写组件(提供方)<template> <di...

庭前云落
今天
5
0
使用Prometheus监控SpringBoot应用

通过之前的文章我们使用Prometheus监控了应用服务器node_exporter,数据库mysqld_exporter,今天我们来监控一下你的应用。(本文以SpringBoot 2.1.9.RELEASE 作为监控目标) 编码 添加依赖 使...

JAVA日知录
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部