搭建 gogs 代码托管服务器
文章目录
前头写到搭建好了gitlab,不过没有找到汉化的方法,而且看去界面蛮繁琐的(针对没有使用github的同学而言)。为了降低大家入门门槛,决定使用gogs来搭建代码托管服务器。
#gogs github上的star截止至15.08.03,已经超过8k。自助安装极其方便,有各个平台的二进制文件,甚至可以轻易搭建在树莓派上
#install
##安装mysql 你也可以不安装任何数据库,默认会使用sqlite
|
|
进入mysql,创建好数据库:CREATE DATABASE gogs;
##安装gogs 采用二进制安装
|
|
###run it
|
|
跑起来后进入到一个安装配置页面,邮件服务器的配置需要注意一下端口号,举个栗子:smtp.qq.com:25
.此外注意一下当出现运行系统用户非当前用户
错误是,在配置里填上你运行./gogs web
对应的用户
如果需要修改配置文件,只要编辑gogs目录下的:custom/conf/app.ini
整个过程极其建议
ps:管理员可以不设置,第一个注册的用户将被认为是管理员
如果要reinstall,只要把data和custom目录删除即可
##备份
默认情况下,代码仓库在~/gogs-repositories
下,备份的话除了备份数据库(gogs/data),也注意备份这个目录,推荐使用backup,我在此前的一篇博客里有提到:here
backup的安装非常蛋疼,在ruby1.9中各种出错,还是使用rsync好了
###使用rsync同步数据
- 配置好ssh免登陆
- ssh-keygen -t dsa
- sudo cp -R .ssh /root/
- ssh-copy-id -i .ssh/id_dsa.pub xx@backup_host
- 本地推送到远程:
/usr/bin/rsync -avH /home/xx/gogs-repositories xx@backup_host:~/backup/
- 备份mysql数据
- /usr/bin/mysqldump -uroot -pxxx gogs > /tmp/gogs.sql
- 使用cron写定时任务
00 01 * * * /usr/bin/rsync xxx
(每天凌晨1点同步数据)
使用Supervisor管理进程
在/etc/supervisord.conf.d/
创建gogs.conf
:
|
|
supervisorctl restart gogs
文章作者 种瓜
上次更新 2015-08-03