Gitlab如何搭建?php
安装gitlab所须要的依赖html
sudo yum install curl policycoreutils openssh-server openssh-clients
nginx
使sshd服务自动启动git
sudo systemctl enable sshd
shell
启动sshd服务vim
sudo systemctl start sshd
服务器
安装邮件服务器ssh
sudo yum install postfix
curl
使邮件服务器postfix自启动socket
sudo systemctl enable postfix
启动邮件服务器postfix
sudo systemctl start postfix
开放防火墙
sudo firewall-cmd --permanent --add-service=http
如何启动GitLab?
启动,配置
sudo gitlab-ctl reconfigure
修改gitlab配置文件指定服务器ip和自定义端口
vim /etc/gitlab/gitlab.rb 修改 extenal_url="" 为本身服务器的访问ip+端口或域名
ps:注意这里设置的端口不能被占用,默认是8080端口,能够定义其它端口,并在防火墙设置开放相对应端口。
firewall-cmd --permanent --add-port=8888/tcp systemctl restart firewalld.service
重置并启动GitLab
从新配置
gitlab-ctl reconfigure 重启 gitlab-ctl restart
访问gitlab:http://192.168.0.108:8099/ 或 你的域名
说明一下,域名访问须要配置Nginx,可用Gitlab内置或外部独立的
502错误可能的缘由
如何使用外部Nginx?
禁用Gitlab内部的Nginx
vim /etc/gitlab/gitlab.rb 在配置中开启一下配置 nginx['enable'] = false
修改外部Nginx配置
upstream gitlab_server { server unix://var/opt/gitlab/gitlab-rails/sockets/gitlab.socket; } server { listen *:80; server_name gitlab.paipailicai.cn; server_tokens off; # don't show the version number, a security best practice root /opt/gitlab/embedded/service/gitlab-rails/public; client_max_body_size 250m; access_log /usr/local/ddanglc/gitlab/logs/gitlab_access.log; error_log /usr/local/ddanglc/gitlab/logs/gitlab_error.log; location / { try_files $uri $uri/index.html $uri.html @gitlab; } location @gitlab { proxy_read_timeout 300; # Some requests take more than 30 seconds. proxy_connect_timeout 300; # Some requests take more than 30 seconds. proxy_redirect off; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Frame-Options SAMEORIGIN; proxy_pass http://gitlab_server; } location ~ ^/(assets)/ { root /opt/gitlab/embedded/service/gitlab-rails/public; expires max; add_header Cache-Control public; } error_page 502 /502.html; }
修改权限配置,让外部Nginx访问gitlab的socket文件
sudo chmod -R o+x /var/opt/gitlab/gitlab-rails
重启 nginx, 重启gitlab
sudo /usr/local/nginx/sbin/nginx -s reload sudo gitlab-ctl reconfigure