Gitlab 相关站点
Gitlab 介绍
GitLab 是基于 Ruby on Rails 的一个开源版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目。GitLab 分为社区版(CE) 和企业版(EE)。它拥有与 Github 类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序 (Wall) 进行交流。依赖组件:Ruby、Git、Nginx、Redis、Sidekiq、GitLab Runner、Unicorn Workers、PostgreSQL/MySQL/MariaDB 等,其中 MySQL/MariaDB 并不完全支持 Gitlab 的所有功能,官方强烈推荐安装 PostgreSQL。
安装环境说明
1 2 3 4 5
| $ uname -a Linux centos7 3.10.0-957.1.3.el7.x86_64
$ cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core)
|
安装并配置必要的依赖项
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| # yum install -y curl policycoreutils-python openssh-server
# systemctl enable sshd
# systemctl start sshd
# firewall-cmd --state
# systemctl start firewalld
# firewall-cmd --permanent --add-service=http
# systemctl reload firewalld
# firewall-cmd --list-services dhcpv6-client ssh http
|
安装 Postfix,用于发送通知邮件
1 2 3 4 5 6 7 8
| # yum install postfix
# systemctl enable postfix
# systemctl start postfix
|
Yum 方式安装 Gitlab
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| # curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
# EXTERNAL_URL="http://192.168.1.198" yum install -y gitlab-ce
# gitlab-ctl reconfigure
# gitlab-ctl status
# cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
http://192.168.1.198
|
配置 Gitlab 的 Nginx 端口
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
# vim /etc/gitlab/gitlab.rb
nginx['listen_port'] = 8888 external_url 'http://192.168.1.198:8888'
# gitlab-ctl reconfigure
# gitlab-ctl restart
# firewall-cmd --zone=public --permanent --add-port=8888/tcp
# firewall-cmd --reload
# firewall-cmd --list-ports
|
Gitlab 常用目录与配置文件介绍
1 2 3 4 5 6 7 8 9 10 11
| # ls /var/opt/gitlab
# ls /var/log/gitlab
# cat /etc/gitlab/gitlab.rb
# cat /var/opt/gitlab/nginx/conf/gitlab-http.conf
|
Gitlab 常用命令介绍
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| # gitlab-ctl start
# gitlab-ctl stop
# gitlab-ctl restart
# gitlab-ctl status
# gitlab-ctl restart nginx
# gitlab-ctl status nginx
# gitlab-ctl reconfigure
# gitlab-ctl tail
# gitlab-ctl tail nginx/gitlab_access.log
# gitlab-rake gitlab:check SANITIZE=true --trace
|
下篇 - Git 之八 - Gitlab 详细使用教程