公司买了一台阿里云服务器部署项目测试坏境。看着服务器那么高的配置,便打算在上面搭建GitLab,以告别间歇性龟速的Bitbucket服务。当然喽,作为个人私有项目托管,我依然推荐使用BB。
准备
查看服务器系统环境,以下载对应的GitLab包。
1 2 |
|
根据服务器信息CentOS release 6.5 (Final),到GitLab | Package downloads下载对应的RPM
用curl下载比较慢,所以我改用迅雷下载,然后scp到服务器主目录下。
1 2 |
|
登录服务器,解压rpm文件
1 2 |
|
安装
1 2 3 4 5 |
|
配置
1
|
|
将external_url设成服务器ip地址,然后执行
1 2 |
|
在浏览器地址栏输入服务器ip,以访问GitLab。管理员用户名为root,初始密码为5iveL!fe,首次登录后会要求改密码。
问题
当我在服务器安装之前,先在本地的虚拟机跑了一遍,很正常。但是当安装到真实的服务器时,访问GitLab遇到了502错误。
在命令行执行sudo gitlab-ctl tail可看到错误信息,原来是因为8080端口被项目测试环境占用,unicorn无法启动。
所以,很自然的想到去修改GitLab的配置文件。最终的配置信息如下:
1 2 3 4 5 6 7 8 |
|
修改完配置文件,再次执行sudo gitlab-ctl reconfigure,等执行完成后打开浏览器,此时应该就可以访问GitLab了。
若访问被防火墙拦截(比如我在Mac上访问虚拟机里安装的CentOS),则执行下面操作即可:
1
|
|
然后加入-A INPUT -m state –state NEW -m tcp -p tcp –dport 8888 -j ACCEPT
更多
- 启动GitLab组件: gitlab-ctl start
- 停止GitLab组件: gitlab-ctl stop
- 重启GitLab组件: gitlab-ctl restart
补记 Sep 19th
今天pull代码时遇到“the requested url returned error 500”这样的错误,到服务端用sudo gitlab-ctl tail查看了下得知是因为“PostgreSQL’s request for a shared memory segment exceeded available memory”。
解决的办法是在Gitlab配置文件里加上下面这一行,然后reconfigure即可。
1
|
|