一起玩树莓派3+使用Gitlab搭建专业Git服务
http://bbs.eeworld.com.cn/thread-505256-1-1.html
https://packages.gitlab.com/gitlab/raspberry-pi2
https://packages.gitlab.com/gitlab/raspberry-pi2/packages/raspbian/wheezy/gitlab-ce_8.17.7-ce.0_armhf.deb
Gitlab是一个专业的Git解决方案,功能强大,和Github类似,而且其Community Edition (CE)是免费的,完全可以胜任为中小团队提供专业代码托管服务的工作,当然更重要的是它可以在Raspberry Pi上部署运行。
项目首页:https://about.gitlab.com
下载页:https://packages.gitlab.com/gitlab/raspberry-pi2
下载地址(打开页面,点击右上角的Download按钮):
https://packages.gitlab.com/gitlab/raspberry-pi2/packages/debian/jessie/gitlab-ce_8.13.0-ce.0_armhf.deb
下载得到gitlab-ce_8.13.0-ce.0_armhf.deb文件。
注意版本要选择jessie,也就是Debian 8,因为现在的Raspbian是基于它打造的。
官网给出了在线安装的方法,但是我试了几次,可能由于国内到Gitlab下载服务器之间的网络状况不好,很难在线安装成功。
国内的软件源即使有Gitlab的镜像,通常也没有支持Raspberry Pi架构的分支。
所以这里给出先下载安装包,然后离线安装到Raspberry Pi上的方法。
开始安装
先安装一些必要的依赖包:
- sudo apt-get install curl openssh-server ca-certificates postfix apt-transport-https
复制代码
安装postfix时,会弹出一些设置,这是和发邮件相关的,如果不需要邮件功能,这里的设置并不重要。
等待上述依赖包安装完成后,把之前下载的安装包gitlab-ce_8.13.0-ce.0_armhf.deb上传到Raspberry Pi的文件系统里。
正式安装deb包
- sudo dpkg -i gitlab-ce_8.13.0-ce.0_armhf.deb
复制代码
这个包有281MB,包含123034个文件,因此安装会有些慢,卡在下面这步是正常的,耐心等待一下。
安装完成提示信息:
根据提示,需要运行:
- sudo gitlab-ctl reconfigure
复制代码
看到如下提示就配置完成了
初始设置
管理员用户是root
首次登录后会要求修改密码(8位及以上)
在浏览器访问Raspberry Pi的IP,会跳转到设定密码的页面。
设定完成后,用新密码登录root用户。
这是管理员用户,只用它来添加普通用户,在普通用户里新建仓库来托管代码。
点击界面右上角的小扳手图标,进入Admin Area,这是管理员独有的区域。
在user里新建一个普通用户
注意初始的Projects limit只有10,只能创建10个projects。如果觉得不够用,可以放宽一点限制。
普通用户的密码会发送到邮箱,如果之前邮箱没配置好,可能会收不到,或者如果是内网使用,邮件也无法发出。这个问题可以这样解决:
管理员里可以用管理权限修改这个用户的密码,改完后告诉该用户这个密码,该用户在首次登录后,会被提示设置一个新密码。
如果以后使用时该用户忘记了密码,管理员也可以登录Admin Area重置。
这样就不需要邮件来重置密码,缺点是需要管理员介入,对于中小团队这样的管理方法是可取的(可以由项目组织者充当管理员)。
另外在Admin Area界面右侧有个齿轮形状的图标,点击这里可以修改一些全局设定(包括前面初始的Projects limit等), 根据提示修改就行了。
修改服务端口
默认使用80端口,如果需要修改,可以修改/etc/gitlab/gitlab.rb中如下图的2处地方,比如这样就修改成了7000端口。
两个地方都要修改。
注意保存文件后,要运行如下命令使得配置生效:
- sudo gitlab-ctl reconfigure
复制代码
可以看到能使用7000端口访问了,Project path也是正确的。
一些实用的维护命令
修改任何配置文件后都要输入如下命令使配置生效。
- sudo gitlab-ctl reconfigure
复制代码
页面缓存清除:
- sudo gitlab-rake cache:clear RAILS_ENV=production
复制代码
Gitlab各组件启动:
- sudo gitlab-ctl start
复制代码
Gitlab各组件停止:
- sudo gitlab-ctl stop
复制代码
Gitlab各组件重启:
- sudo gitlab-ctl restart
复制代码
禁用Gitlab开机自启动:
- sudo systemctl disable gitlab-runsvdir
复制代码
启用Gitlab开机自启动:
- sudo systemctl enable gitlab-runsvdir
复制代码
最新文章
- Objective-C Runtime 运行时之四:Method Swizzling
- 解决方案:Default Activity Not Found !
- Windows Phone 8.1 列表控件(1):基本
- PHP学习日记(一)——类、函数的使用
- [转]iOS Tutorial – Dumping the Application Memory Part 2
- BZOJ 3907: 网格 [Catalan数 高精度]
- FusionCharts报错收录
- 6.01-re-split_chinese
- JavaScript(类型转换、条件语句、循环、函数)
- 两个时间点计算相隔几年,几个月,几天-java
- python 装饰方法
- nginx反向代理导致请求header头信息丢失
- Qt 状态栏设置
- android 水波纹效果实现
- Appirater激励用户为你的app评分
- Django快速搭建博客系统
- 常用的JavaScript设计模式(二)Factory(工厂)模式
- 某游戏研究之字符过滤类-WorldFilter
- 【luogu P1082 同余方程】 题解
- HN669打包工具--调试文档
热门文章
- JAVA基础之——方法直接用类名.的理解
- ChannelSftp.chmod方法赋权文件夹
- oracle sum(col1) over(partition by col2 order by col3):实现分组递增汇总
- 【Chromium】sandboxed window问题记录
- Foxmail邮件收取网易企业邮件配置
- 使用javascript调用android代码
- Class.forName和ClassLoader.loadClass的区别(转载)
- SpringBoot整合mybatis踩坑
- python学习笔记之——正则表达式
- DrawerLayout使用