Linux 搭建Gitlab服务器
一、安装并配置相关依赖
- 安装ssh:
sudo yum install -y curl policycoreutils-python openssh-server
- 设置ssh自启:
sudo systemctl enable sshd
- 启动ssh:
sudo systemctl start sshd
- 添加http服务到firewalld,pemmanent表示永久生效,若不加–permanent系统下次启动后就会失效:
sudo firewall-cmd --permanent --add-service=http
- 安装Postfix以发送通知邮件:
sudo yum install -y postfix
- 将postfix服务设置成开机自启动:
sudo systemctl enable postfix
- 启动postfix:
sudo systemctl start postfix
二、下载安装gitlib
- 下载:
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
或wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
- 安装gitlib:
rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
- 修改gitlab配置文件指定服务器ip和自定义端口
- 重置并启动Gitlib
gitlab-ctl reconfigure
gitlab-ctl restart
- 访问Gitlib页面
a.初始账户:root,初始密码:5iveL!fe - 创建public key:
ssh-keygen
- 复制di_rsa.pub公钥:
cat ~/.ssh/id_rsa.pub
- 添加公钥至gitlib
三、服务管理
查看服务状态:gitlab-ctl status
开启服务: gitlab-ctl start
关闭服务:gitlab-ctl stop
关闭gitlab的自动启动 :systemctl disable gitlab-runsvdir.service
开启gitlab的自动启动:
systemctl enable gitlab-runsvdir.service
systemctl start gitlab-runsvdir.service
gitlab-cmd start
查看错误日志:gitlab-ctl tail
四、汉化
Gitlab中文社区版地址:https://gitlab.com/xhang/gitlab
- 克隆版本库
cd /usr/local/src/
git clone https://gitlab.com/xhang/gitlab.git
- 获取当前Gitlib版本
gitlab_version=$(cat /opt/gitlab/embedded/service/gitlab-rails/VERSION)
- 比较汉化标签和原标签,导出patch用的diff文件
cd /usr/local/src/gitlab
git diff v${gitlab_version} v${gitlab_version}-zh > ../${gitlab_version}-zh.diff
- 停止gitlib:
gitlab-ctl stop
- 导入汉化补丁
patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < ../${gitlab_version}-zh.diff
- 启动gitlab:
gitlab-ctl start
修改访问地址
vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
安装git-ee企业版
- 安装依赖
sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld
- 安装邮件服务器
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
- 下载安装gitlab包
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
sudo yum install -y gitlab-ee
- 修改配置文件访问地址
## GitLab URL
##! URL on which GitLab will be reachable.
##! For more details on configuring external_url see:
##! https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab
external_url 'http://10.10.10.10:80/gitlab'
- 重载配置及启动gitlab
gitlab-ctl reconfigure
gitlab-ctl restart
- 添加端口到防火墙
firewall-cmd --zone=public --add-port=90/tcp --permanent
firewall-cmd --reload