CentOS 7 安装gogs git代码服务器

1,关于Gogs

开源的代码服务器最牛的是github,有一个开源的实现是gitlab。 但是gitlab是用ruby写的,某些时候性能有问题。 有的时候使用的时候超级慢。代码存的多了就会出现的问题。 不知道 gogs会不会有这个问题。于是尝试下。

代码放到github上面了。1300多个分享。

2,安装步骤

我使用的是最简单docker安装。在centos7 直接install就可以安装docker。源里面有。

yum -y install docker

su root # 先切换到root用户, 再执行以下命令 systemctl enable docker # 开机自动启动docker

systemctl start docker # 启动docker systemctl restart docker # 重启dokcer

否则还需要安装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 国内镜像的使用: 需要注册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,总结

gogs代码非常的少,二进制代码才18mb。速度很快。 没有太多冗余的功能,比较gitlab还是显得简陋点。但是这个问题不大,功能越多问题越多,只要做好git服务就行,其他的花哨的东西都没有用。 做代码托管服务足够了,没有gitlab之前,代码放到svn服务器的时候还没有可视化界面呢,只要配置文件不一样使用么。 已经非常不错了,速度快,够稳定就行了,其他都是浮云。

docker容器Cannot connect to the Docker daemon. Is the docker daemon running on this host?解决方法。

第一次安装Docker,运行docker命令是可以的,如

[html] view plain copy

  1. docker ps

重启系统之后,运行docker ps后出现如下报错:

Cannot connect to the Docker daemon. Is the docker daemon running on this host?

查找资料后,知道了这是权限问题。需要root用户才能运行。

从0.5.2开始docker的守护进程总是以root用户来运行。docker守护进程绑定的是Unix的socket而不是一个TCP端口。Unix的socket默认属于root用户,所以,使用docker时必须加上sudo。

从0.5.3开始,创建一个名为docker组,然后将用户加入这个组内。当docker守护进程启动时,它会把Unix的读写权限赋予docker组。这样,当你作为docker组内用户使用docker客户端时,你就无须使用sudo了。

----分割线---

以下为解决办法:

第一种:

依次运行以下命令,跳转至root用户去运行docker命令:

[html] view plain copy

  1. sudo su //切换到root
  2. service docker start //启动docker service
  3. docker images //显示所有images
  4. docker ps //重新运行docker命令

第二种:

把当前用户加到docker用户组中:

# 添加docker用户组

[html] view plain copy

  1. sudo groupadd docker

# 把自己加到docker用户组中

[html] view plain copy

  1. sudo gpasswd -a myusername docker

# 重启docker后台服务

sudo service docker restart

重启系统,直接运行docker命令就行了,不用加上sudo。

G

M

T

Detect languageAfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBengaliBosnianBulgarianCatalanCebuanoChichewaChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDutchEnglishEsperantoEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekGujaratiHaitian CreoleHausaHebrewHindiHmongHungarianIcelandicIgboIndonesianIrishItalianJapaneseJavaneseKannadaKazakhKhmerKoreanLaoLatinLatvianLithuanianMacedonianMalagasyMalayMalayalamMalteseMaoriMarathiMongolianMyanmar (Burmese)NepaliNorwegianPersianPolishPortuguesePunjabiRomanianRussianSerbianSesothoSinhalaSlovakSlovenianSomaliSpanishSundaneseSwahiliSwedishTajikTamilTeluguThaiTurkishUkrainianUrduUzbekVietnameseWelshYiddishYorubaZulu

AfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBengaliBosnianBulgarianCatalanCebuanoChichewaChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDutchEnglishEsperantoEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekGujaratiHaitian CreoleHausaHebrewHindiHmongHungarianIcelandicIgboIndonesianIrishItalianJapaneseJavaneseKannadaKazakhKhmerKoreanLaoLatinLatvianLithuanianMacedonianMalagasyMalayMalayalamMalteseMaoriMarathiMongolianMyanmar (Burmese)NepaliNorwegianPersianPolishPortuguesePunjabiRomanianRussianSerbianSesothoSinhalaSlovakSlovenianSomaliSpanishSundaneseSwahiliSwedishTajikTamilTeluguThaiTurkishUkrainianUrduUzbekVietnameseWelshYiddishYorubaZulu

Text-to-speech function is limited to 200 characters

Options : History : Feedback : Donate

Close

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Super 前端

Log4j日志集中管理

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

15920
来自专栏边缘计算

5G边缘计算:这回要当主角

随着互联网的发展,“云”这一概念已经成熟并已结出了累累硕果,造就了亚马逊,微软,谷歌这样的行业巨头。

9610
来自专栏Super 前端

Linux基础命令

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

18450
来自专栏苏生不惑

比 man 更强悍的命令行工具 cheat

相信你在技术文章里经常会看到 TL;DR 即Too Long; Didn’t Read. 太长不看, man curl 的内容就是太长了,我不看。

13920
来自专栏Super 前端

tomcat的jvm和session同步配置

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

9510
来自专栏一猿小讲

永远离不开的小工具

曾记得 N 年前,我经常干这种事情,码这种代码。今天回过头来,对此类事情简单做一个分享,以防你们也遇到此类问题,不妨拿去实践一下,说不定会提高效率呢。

12140
来自专栏叉叉敌

微信小程序-弹出对话框

在wxml文件里面 {{data.showWindows.Content}} 把内容传上去即可

96410
来自专栏大数据手稿笔记

Spark Shuffle的技术演进

本文原文 http://www.leonlu.cc/profession/19-spark-shuffle ,作者 LeonLu

9530
来自专栏Java建设者

Docker入门

上一节中,我们了解到了Docker 的一些基本知识点,它的一些核心概念,Docker的使用安装等。此篇文章我们对 Docker 进行入门讲解

10430
来自专栏sktj

flask 发送邮件(flask 59)

from threading import Thread from flask import url_for,current_app from flask_...

8120

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励