新入公司,要求用git做版本控制,之前公司用的gitlab,找资料过程中发现了gogs,相比gitlab性能要求不大,所以学习搭建Gogs。
什么是Gogs
Gogs 是一款极易搭建的自助 Git 服务。
Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。
服务器环境
阿里云ECS服务器 Ubuntu 16.04.2
安装Gogs所需的其他环境
sudo apt-get install nginx
2.安装git
sudo apt-get install git
3.安装MySQL
sudo apt-get install mysql-server
4.进入MySQL
mysql -u root -p
这里如果已经安装过MySQL,用之前的密码登录就好。
5.创建gogs数据库
//登录 MySQL 创建一个新用户 gogs,并将数据库 gogs的所有权限都赋予该用户。这里是密码 SET GLOBAL storage_engine = 'InnoDB'; CREATE DATABASE gogs CHARACTER SET utf8 COLLATE utf8_bin; GRANT ALL PRIVILEGES ON gogs.* TO ‘root’@‘localhost’ IDENTIFIED BY ''; FLUSH PRIVILEGES; QUIT;
为Gogs创建单独的用户
sudo adduser git
这里一样要设置密码,每次切换用户需要密码,不要忘了密码
下载安装Gogs
首先安装解压的工具
sudo apt-get install unzip
su git //这里是切换git用户 cd ~ //返回根目录 wget https://dl.gogs.io/0.11.4/linux_amd64.zip unzip linux_amd64.zip
现在好像用二进制和源码安装的方法,这里不做讨论。
配置
1.修改Gogs service配置文件
vim /home/git/gogs/scripts/init/debian/gogs
PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="Go 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 #如果运行gogs不是用的这个用户,修改对应用户
2.切换回root用户
su root
3.复制到/etc/init.d/
sudo cp /home/git/gogs/scripts/init/debian/gogs /etc/init.d/
4.赋予权限
sudo chmod +x /etc/init.d/gogs
5.复制service
cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system/
启动Gogs
cd /home/git/gogs/ ./gogs web
搭建Gogs遇到的坑
安装一切顺利,打开浏览器输入 ip:3000/install 打不开
启动Gogs后,不知道怎么关闭或者重启,我查进程,kill -9 一直杀不死,头一次遇到。
鸡汤:学习是一件难得的事,正因为难,得到的才更有价值。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/224167.html原文链接:https://javaforall.net
