关于设计,生活和电子的二三事

安装Gogs及简单配置

最近在折腾git相关的,想自己搭建一个类似github那种的服务,搜了一下,GitLab好是好,但占用资源太多。后来找到Gogs,看起来挺好的,于是尝试搭建一个。我是在Ubuntu 14.04 LTS上安装的,但看gogs说明里推荐使用Windows的新版git……搞不明白了

Gogs需要git相关组件,版本>1.7.1,除此之外别的组件都不是必须的。在安装gogs之前建议把系统升级到最新版。gogs支持MySQL,PostgreSQL,SQLite3和TiDB,其中TiDB为试验性质,SQLite3不需要另外安装。我使用SQLite3作为gogs数据库。

首先升级系统和安装git
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install git

如果你想要SSH登陆的话还要安装ssh。服务器版本Ubuntu自带SSH,桌面版需要另外安装
sudo apt-get install ssh
安装完成后运行
sudo service ssh restart
让ssh开机自动启动

如果你不想拿自己现有的账号建立gogs服务的话可以新建一个账号供gogs使用。gogs默认账号是git一般不用改
sudo adduser git
输入密码什么的并确认
su git
切换到git用户操作

然后下载gogs二进制文件。这里直接使用gogs编译好的二进制文件安装。安装之前可以到https://gogs.io/docs/installation/install_from_binary下载最新的二进制文件。
wget https://dl.gogs.io/gogs_v0.9.13_linux_amd64.tar.gz
tar -xvf gogs_v0.9.13_linux_amd64.tar.gz
cd gogs

然后运行
./gogs web

在浏览器里打开http://127.0.0.1:3000/,能够看到gogs安装页面

输入基本信息,如数据库类型,文件存放位置之类的信息,然后在最下面点Install Now即可完成安装,然后就能像github那样使用了

在安装完成后,gogs会在安装目录下的custom\conf目录下生成app.ini配置文件,可以修改配置然后重启gogs就可以应用新配置。附配置文件:

APP_NAME = Gogs: Go Git Service
RUN_USER = xxxxxx				//gogs运行使用的用户名
RUN_MODE = prod

[database]						//gogs数据库相关配置,在安装时候可以选择,安装后请勿修改
DB_TYPE  = sqlite3
HOST     = 127.0.0.1:3306
NAME     = gogs
USER     = root
PASSWD   =
SSL_MODE = disable
PATH     = /home/xxxxxx/gogs-database/gogs.db

[repository]								//代码仓库位置
ROOT = /home/xxxxxx/gogs-repositories

[server]									//对外服务器地址,如果绑定域名此处为域名
DOMAIN       = xxx.xxx.xxx.xxx
HTTP_PORT    = 3000
ROOT_URL     = http://xxx.xxx.xxx.xxx:3000/
DISABLE_SSH  = true
SSH_PORT     = 22
OFFLINE_MODE = true

[mailer]									//邮件设置。这里服务器位于内网,所以此项没有启用
ENABLED = false

[service]									//网站设置,是否启用邮件提醒,开启注册,验证码等
REGISTER_EMAIL_CONFIRM = false
ENABLE_NOTIFY_MAIL     = false
DISABLE_REGISTRATION   = false
ENABLE_CAPTCHA         = true
REQUIRE_SIGNIN_VIEW    = false

[picture]									//是否使用gravatar头像
DISABLE_GRAVATAR = true

[session]
PROVIDER = file

[log]
MODE      = file
LEVEL     = Info
ROOT_PATH = /home/xxxxxx/gogs/log

[security]
INSTALL_LOCK = true
SECRET_KEY   = ***************

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据