GitLab是利用Ruby on Rails一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。与Github类似,GitLab能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。
Nginx:静态web服务器。
gitlab-shell:用于处理Git命令和修改authorized keys列表。
gitlab-workhorse: 轻量级的反向代理服务器。
logrotate:日志文件管理工具。
postgresql:数据库。
redis:缓存数据库。
sidekiq:用于在后台执行队列任务(异步执行)。
unicorn:An HTTP server for Rack applications,GitLab Rails应用是托管在这个服务器上面的。
gitlab的工作流程图
①配置yum源
vim /etc/yum.repos.d/gitlab-ce.repo
配置内容如下:
[gitlab-ce] name=gitlab-ce baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6 Repo_gpgcheck=0 Enabled=1 Gpgkey=https://packages.gitlab.com/gpg.key
②更新本地yum缓存
sudo yum makecache
③重置GPG keys
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
④安装gitlab社区版
sudo yum intall gitlab-ce #自动安装最新版 或 sudo yum install gitlab-ce-x.x.x #安装指定版本
sudo gitlab-ctl start # 启动所有 gitlab 组件; sudo gitlab-ctl stop # 停止所有 gitlab 组件; sudo gitlab-ctl restart # 重启所有 gitlab 组件; sudo gitlab-ctl status # 查看服务状态; sudo gitlab-ctl reconfigure # 启动服务; sudo vim /etc/gitlab/gitlab.rb # 修改默认的配置文件; gitlab-rake gitlab:check SANITIZE=true --trace # 检查gitlab; sudo gitlab-ctl tail # 查看日志;
修改gitlab的域名配置
vim /etc/gitlab/gitlab.rb
因为笔者在本地搭建的,故配置成自己的ip,如果有条件也可配置成自己服务器域名
external_url 'http://11.239.163.102'
执行如下命令,使其生效
sudo gitlab-ctl reconfigure
启动服务后,直接访问服务器ip就能访问gitlab,第一次登录使用的用户名和密码为 root 和 5iveL!fe,然后设置自己的登录密码
sudo apt-get install git cd ~/ && ssh-****** -t rsa -C "your username" cat ~/.ssh/id_rsa.pub 得到**设置在gitlab上 http://${your server ip}/profile/keys 添加
好了,然后就可以用gitlab管理项目了!