本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/51089323 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys
1,关于Gogs
开源的代码服务器最牛的是github,有一个开源的实现是gitlab。
但是gitlab是用ruby写的,某些时候性能有问题。
有的时候使用的时候超级慢。代码存的多了就会出现的问题。
不知道 gogs会不会有这个问题。于是尝试下。
官方网站是:https://gogs.io/
代码放到github上面了。1300多个分享。
2,安装步骤
https://gogs.io/docs/installation
我使用的是最简单docker安装。在centos7 直接install就可以安装docker。源里面有。
yum -y install docker
否则还需要安装mysql,git,ssh等服务,只是先折腾下,不想太麻烦。即使二进制的安装也才有15mb大小。
https://github.com/gogits/gogs/tree/master/docker
# Pull image from Docker Hub.
$ docker pull gogs/gogs
# Create local directory for volume.
$ mkdir -p /var/gogs
# Use `docker run` for the first time.
$ docker run --name=gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs
# Use `docker start` if you have stopped it.
$ docker start gogs
使用docker ps就可以看到服务了:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a42d410293e4 gogs/gogs "docker/start.sh /bin" 17 seconds ago Up 8 seconds 0.0.0.0:10022->22/tcp, 0.0.0.0:10080->3000/tcp gogs
之后就是等待了,之前写了关于docker 国内镜像的使用:
http://blog.csdn.net/freewebsys/article/details/50888878
需要注册daocloud 账号然后设置下源。
3,安装gogs
输入docker主机的ip和端口(默认端口10080):http://192.168.1.8:10080/
为了简单安装,使用sqlite3数据库。正常应该使用docker安装一个mysql服务,然后配置用户名密码。
默认配置,注意一定要写上服务器ip或域名。
可以不用创建管理员用户,默认第一个用户就是管理员。
但是admin这个用户是不能使用的。
创建了一个gogs用户,这个就是管理员。
数据在宿主上面的/var/gogs/目录下面,如果需要重新安装,则清空这个目录,然后重启下gogs的docker镜像即可。
4,测试git服务
创建一个项目:
下载然后提交一个文件:
# git clone http://192.168.1.8:10080/gogs/gogs.git
# touch README.md
# git add README.md
# git commit -m "first commit"
# git push -u origin master
如果没有配置ssh,则需要输入用户名密码:
Username for 'http://192.168.1.8:10080': gogs
Password for 'http://gogs@192.168.1.8:10080':
Counting objects: 3, done.
Writing objects: 100% (3/3), 206 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To http://192.168.1.8:10080/gogs/gogs.git
* [new branch] master -> master
Branch master set up to track remote branch master from origin.
然后空文件就上传上了!!
5,总结
本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/51089323 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys
gogs代码非常的少,二进制代码才18mb。速度很快。
没有太多冗余的功能,比较gitlab还是显得简陋点。但是这个问题不大,功能越多问题越多,只要做好git服务就行,其他的花哨的东西都没有用。
做代码托管服务足够了,没有gitlab之前,代码放到svn服务器的时候还没有可视化界面呢,只要配置文件不一样使用么。
已经非常不错了,速度快,够稳定就行了,其他都是浮云。