搭建gogs

我的机器环境:centos 7

1.安装git

yum install git
 
2.安装mysql
gogs的数据存在mysql中,需要安装一个mysql来存数据,当然也有其他的选择,比如sqllite。
mysql安装:
http://www.cnblogs.com/dingxu/p/8927955.html
 
安装好mysql后:
登录到mysql
mysql -uroot -p
 
SET GLOBAL storage_engine = 'InnoDB';                //如果显示没有这个字段的错误,就用default_storage_engine = 'InnoDB'
CREATE DATABASE gogs CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL PRIVILEGES ON gogs.* TO ‘root’@‘localhost’ IDENTIFIED BY 'xxxx';
FLUSH PRIVILEGES;
QUIT;
## xxxx是密码

3.安装nginx

yum install nginx    // 默认配置文件安装在/etc/nginx,修改nginx.conf和nginx.conf.default配置文件

启动nginx
cd /usr/sbin
./nginx                //启动nginx
./nginx -s quit       //停止nginx
./nginx -s stop      //强制停止,相当于执行 ps -ef 后,找到pid,执行kill -9 pid
./nginx -s reload   //重启,使nginx配置文件做了修改,可以使用此命令 
 
gogs的默认web页面是在3000端口,可以通过nginx来做一个转发,这样直接ip就可以访问了。
 
server {
listen 80;
server_name ip;//ip或者域名
location / {
  proxy_pass http://127.0.0.1:3000/;
  }
}
 

4.安装gogs

1.创建git用户

useradd git
passwd git          //设置密码
 

2.下载解压gogs

切换到git用户
su git
 
cd ~
 
# unzip 命令不可用的话需先安装
unzip linux_amd64.zip

3.配置gogs

vim /home/git/gogs/scripts/init/debian/gogs
 
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="GoGs Git Service"
NAME=gogs
SERVICEVERBOSE=yes
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
WORKINGDIR=/home/git/gogs #根据自己的目录修改
DAEMON=$WORKINGDIR/$NAME
DAEMON_ARGS="web"
USER=git #修改对应用户
 

4.切回root,拷贝文件和服务

#拷贝到init.d下
cp /home/git/gogs/scripts/init/debian/gogs /etc/init.d/
#添加可执行权限
chmod +x /etc/init.d/gogs
#拷贝service
cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system/
 

5.启动

systemctl start gogs.service
 
访问ip:3000,也可以用nginx做一个反向代理

配置gogs

修改数据库的配置,ip地址啊,开放注册,管理员设置等
 

配置完成后

可以把它理解为一个简单的github来用。还是不错的

修改配置

编辑/home/git/gogs/custom/conf/app.ini即可
 
app.ini:
 
[repository]
ROOT = /home/git/gogs-repositories
 
[server]
DOMAIN           = xxx.xxx.xxx.xxx
HTTP_PORT        = 3000
ROOT_URL         = http:// xxx.xxx.xxx.xxx:3000/
DISABLE_SSH      = false
SSH_PORT         = 22
START_SSH_SERVER = false
OFFLINE_MODE     = false
 
[mailer]
ENABLED = false
 
[service]
REGISTER_EMAIL_CONFIRM = false
ENABLE_NOTIFY_MAIL     = false
DISABLE_REGISTRATION   = true
ENABLE_CAPTCHA         = false
REQUIRE_SIGNIN_VIEW    = false
 
[picture]
DISABLE_GRAVATAR        = true
ENABLE_FEDERATED_AVATAR = false
 
[session]
PROVIDER = file
 
[log]
MODE      = file
LEVEL     = Info
ROOT_PATH = /home/git/gogs/log
 
[security]
INSTALL_LOCK = true
SECRET_KEY   = My9SzhERU5PiV6F
 
 
注意:
测试参考文档在做nginx时,通过创建/etc/nginx/sites-available/gogs.conf或者/etc/nginx/sites-enabled/gogs.conf文件,nginx不生效,通过修改nginx.conf和nginx.conf.default配置文件才成功反向代理
gogs.conf:
server {
        listen 80;
        server_name  127.0.0.1;
        location / {
                proxy_pass http://127.0.0.1:3000/;
                proxy_redirect default;
        }
}
 
 

使用gogs搭建git私有仓库的更多相关文章

  1. 手把手教你使用gogs搭建git私有仓库

    本来想在 Github 上建一个私仓,但是发现只能设置 3 个贡献者. 国内的码云也只能设置 5 个. 无意间看到了使用 gogs 可以搭建私服,正好手头有空闲的服务器,于是开干! https://g ...

  2. 用yunio网盘搭建git私有仓库

      研究生开始奔波于教研室和寝室之间,于是想搭建一个git私有仓库来管理自己在做的项目或者学习资料.一来可以很方便的管理项目,二来可以学习使用git.我的主要工作平台是Linux,这也是我选择yuni ...

  3. Centos7 用gogs搭建git仓库

    0.安装步骤 先安装依赖,然后创建数据库,创建git用户,安装Gogs软件,设置启动,访问web界面进行配置 一.Gogs依赖环境 安装Gogs之前需要配置相应的依赖环境,官网介绍的依赖环境如下: 数 ...

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

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

  5. 实战maven私有仓库三部曲之三:Docker下搭建maven私有仓库

    本章是<实战maven私有仓库>系列的第三篇,在前两章中,我们先在linux搭建maven私有仓库,然后在开发环境使用此仓库,本章我们在docker下快速搭建maven私有仓库,然后像前面 ...

  6. Centos7搭建Harbor私有仓库(二)

    1 说明 前文Centos7搭建Harbor私有仓库(一)中成功搭建了Harbor,但,是以http方式搭建的,这里我们修改为https方式 以下基于镜像CentOS-7-x86_64-Minimal ...

  7. 一步步搭建docker私有仓库并从私有仓库中下载镜像

    一步步搭建docker私有仓库 #下载镜像 docker pull registry#查看镜像 docker images #运行私有仓库,指定端口和数据卷 docker run -d -p : -v ...

  8. 最新搭建GIT服务器仓库

    新开了一个项目,现在需要将代码放在公司GIT服务器上面.所以这里需要了一些问题..记录一下.因为原来公司这边的服务器的git用户都是创建好的.这里没有创建.需要的可以看看:http://www.cnb ...

  9. git私有仓库与pycharm联合使用

    文章目录 1 创建git私有仓库和pycharm的使用 1.1 克隆私有仓库到本地 1.2 使用pycharm打开 1.3 添加.gitignore文件 1.4 并将其添加到仓库 1.5 提交和推送 ...

随机推荐

  1. JSON(二)——JavaScript中js对象与JSON格式字符串的相互转换

    首先我们来看一下js中JSON格式的字符串 var JSONStr1 = "{\"name\" : \"张三\"}"; 注意以下的写法不是j ...

  2. 基于JWT标准的用户认证接口实现

    前面的话 实现用户登录认证的方式常见的有两种:一种是基于 cookie 的认证,另外一种是基于 token 的认证 .本文以基于cookie的认证为参照,详细介绍JWT标准,并实现基于该标签的用户认证 ...

  3. Oracle:常用的一些基本操作

    表操作 查看系统中当前用户所有表: select * from user_tables;select * from user_indexs;select * from user_triggers; s ...

  4. Struts(二十七):使用token或tokenSession防止表单重复提交

    什么是表单重复提交 表单重复提交包括以下几种情况: 前提:不刷新表单页面 1.多次点击“提交”按钮后,重复提交了多次: 2.已经提交成功之后,按“回退”按钮之后,在点击“提交”按钮后,提交成功: 3. ...

  5. Hive:动静态分区

    http://hugh-wangp.iteye.com/blog/1612268 http://blog.csdn.net/opensure/article/details/46537969 使用静态 ...

  6. jvm学习记录-对象的创建、对象的内存布局、对象的访问定位

    简述 今天继续写<深入理解java虚拟机>的对象创建的理解.这次和上次隔的时间有些长,是因为有些东西确实不好理解,就查阅各种资料,然后弄明白了才来做记录. (此文中所阐述的内容都是以Hot ...

  7. 全球性WannaCry蠕虫勒索病毒感染前后应对措施

    前言:针对WannaCrypt勒索病毒的讨论和技术文章是铺天盖地,大量的技术流派,安全厂家等纷纷献计献策,有安全厂家开发各种安全工具,对安全生态来说是一个好事,但对个人未必就是好事,我们国家很多用户是 ...

  8. Java 嵌套类基础详解

    目录 1. 什么是嵌套类? 2. 为什么要使用嵌套类? 3. 嵌套类的类型 4. 静态嵌套类 5. 非静态嵌套类 5.1 成员内部类 5.2 局部内部类 5.3 匿名内部类 6. 嵌套接口 1. 什么 ...

  9. [MongoDB教程] 1.简介

    MongoDB (名称来自「humongous (巨大无比的)」), 是一个可扩展的高性能,开源,模式自由,面向文档的NoSQL,基于 分布式 文件存储,由 C++ 语言编写,设计之初旨在为 WEB ...

  10. [LeetCode] Poor Pigs 可怜的猪

    There are 1000 buckets, one and only one of them contains poison, the rest are filled with water. Th ...