安装
这本来不是什么难事,但是如果用默认的镜像的话下载的慢的要死。又不想费时间配置一个代理,这里记录下整个流程。
我使用的是国内清华大学的yum源
新建 /etc/yum.repos.d/gitlab-ce.repo,内容为
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1
再执行
sudo yum makecache
sudo yum install gitlab-ce
安装完成后需要执行gitlab-ctl reconfigure进行数据和文件的创建
可以参考官方帮助https://mirrors.tuna.tsinghua.edu.cn/help/gitlab-ce/
配置
编辑/etc/gitlab/gitlab.rb文件,第13行external_url ‘http://locahost’(如果不在第13行那就找这几个关键字)
将http://locahost改成服务器的ip,或者是域名
执行
gitlab-ctl restart
执行完这两个命令就能通过刚刚设置的ip或者域名访问了,首次访问会输入密码。(记得打开防火墙相应端口)
如果需要更改代码库存储的位置,在配置文件中更改git_data_dirs({“default” => “/mnt/nas/git-data”})这行,更改到你想要的位置去。
配置HTPPS
配置https的话,需要把刚刚配置的external_url 中间的http换成https。然后将证书文件crt文件和key文件放到/etc/gitlab/ssl/目录下。
执行
gitlab-ctl restart
如果没有证书的有域名的话,可以看我这篇文章申请。
如果只是自己内网用用可以使用下面脚本生成本地证书
#秘钥脚本,将以下内容保存为shell脚本,然后运行
#出现提示输入信息的地方输入信息,先输入域名然后4次证书密码,任意密码,四次保持一致。
#!/bin/sh
# create self-signed server certificate:
read -p "Enter your domain [139.199.125.93]: " DOMAIN
echo "Create server key..."
openssl genrsa -des3 -out $DOMAIN.key 1024
echo "Create server certificate signing request..."
SUBJECT="/C=US/ST=Mars/L=iTranswarp/O=iTranswarp/OU=iTranswarp/CN=$DOMAIN"
openssl req -new -subj $SUBJECT -key $DOMAIN.key -out $DOMAIN.csr
echo "Remove password..."
mv $DOMAIN.key $DOMAIN.origin.key
openssl rsa -in $DOMAIN.origin.key -out $DOMAIN.key
echo "Sign SSL certificate..."
openssl x509 -req -days 3650 -in $DOMAIN.csr -signkey $DOMAIN.key -out $DOMAIN.crt
echo "TODO:"
echo "Copy $DOMAIN.crt to /etc/nginx/ssl/$DOMAIN.crt"
echo "Copy $DOMAIN.key to /etc/nginx/ssl/$DOMAIN.key"
echo "Add configuration in nginx:"
echo "server {"
echo " ..."
echo " listen 443 ssl;"
echo " ssl_certificate /etc/nginx/ssl/$DOMAIN.crt;"
echo " ssl_certificate_key /etc/nginx/ssl/$DOMAIN.key;"
echo "}"
这个脚本会在本文件夹下生成证书,放到刚刚说的目录就好了。
gitlab-ctl reconfigure会重置配置,这里注意一下
参考网址:
https://www.cnblogs.com/wenwei-blog/p/5861450.html
https://www.cnblogs.com/xieshuang/p/8488458.html
https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/