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