买了阿里云服务器一段时间了,一直想装自己的代码服务器。事先了解gitlab,它类似类似github。官网上查看了安装流程,决定动手搭建自己的代码服务器。
安装依赖
1 2 3 4 5 6 7 8
| sudo yum install curl policycoreutils openssh-server openssh-clients sudo systemctl enable sshd sudo systemctl start sshd sudo yum install postfix sudo systemctl enable postfix sudo systemctl start postfix sudo firewall-cmd --permanent --add-service=http sudo systemctl reload firewalld
|
测试发送邮件
1
| echo "Test mail from postfix" | mail -s "Test Postfix" xxx@xxx.com
|
添加安装源
1
| curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
|
更新为国内源
新建 /etc/yum.repos.d/gitlab-ce.repo,内容为
1 2 3 4 5 6 7
| [gitlab-ce] name=gitlab-ce baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7 repo_gpgcheck=0 gpgcheck=0 enabled=1 gpgkey=https://packages.gitlab.com/gpg.key
|
安装
1
| sudo yum install gitlab-ce
|
修改配置
vim /etc/gitlab/gitlab.rb
1 2 3
| gitlab_rails['gitlab_email_from'] = 'gitlab@example.com'
external_url 'http://10.128.31.109'
|
编译启动
1
| sudo gitlab-ctl reconfigure
|
问题
在浏览器中访问GitLab出现502错误。
原因:内存不足。
解决办法:检查系统的虚拟内存是否随机启动了,如果系统无虚拟内存,则增加虚拟内存,再重新启动系统。
8080端口冲突。
原因:由于unicorn默认使用的是8080端口。
解决办法:打开/etc/gitlab/gitlab.rb,打开# unicorn[‘port’] = 8080 的注释,将8080修改为9090,保存后运行sudo gitlab-ctl reconfigure即可。
GitLab头像无法正常显示
原因:gravatar被墙
解决办法:编辑 /etc/gitlab/gitlab.rb
,将
修改为:
1
| gitlab_rails['gravatar_plain_url'] = 'http://gravatar.duoshuo.com/avatar/%{hash}?s=%{size}&d=identicon'
|
然后在命令行执行:
1 2
| sudo gitlab-ctl reconfigure sudo gitlab-rake cache:clear RAILS_ENV=production
|