Centos6.5 安装gitlab 并使用自带的nginx
1.安装依赖
yum -y install policycoreutils openssh-server openssh-clients postfix policycoreutils-python
2.设置postfix开机启动
chkconfig postfix on && service postfix start
3.下载安装包
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/gitlab-ce-11.4.4-ce.0.el6.x86_64.rpm
放入/opt中
4.安装
rpm -i gitlab-ce-11.4.4-ce.0.el6.x86_64.rpm
It looks like GitLab has not been configured yet; skipping the upgrade script.
*. *.
*** ***
***** *****
.****** *******
******** ********
,,,,,,,,,***********,,,,,,,,,
,,,,,,,,,,,*********,,,,,,,,,,,
.,,,,,,,,,,,*******,,,,,,,,,,,,
,,,,,,,,,*****,,,,,,,,,.
,,,,,,,****,,,,,,
.,,,***,,,,
,*,.
_______ __ __ __
/ ____(_) /_/ / ____ _/ /_
/ / __/ / __/ / / __ `/ __ \
/ /_/ / / /_/ /___/ /_/ / /_/ /
\____/_/\__/_____/\__,_/_.___/
Thank you for installing GitLab!
5.修改配置
vim /etc/gitlab/gitlab.rb
关闭自带的nginx
配置地址
external_url 'http://xxx.xxx.xxx.xxx'
禁用自带nginx
nginx['enable'] = false
6.nginx 增加虚拟主机配置
# gitlab socket 文件地址
upstream gitlab {
server unix:/var/opt/gitlab/gitlab-workhorse/socket;
}
server {
listen *:80;
server_name gitlab.demo.com; # 请修改为你的域名
server_tokens off; # don't show the version number, a security best practice
root /opt/gitlab/embedded/service/gitlab-rails/public;
# Increase this if you want to upload large attachments
# Or if you want to accept large git objects over http
client_max_body_size 250m;
# individual nginx logs for this gitlab vhost
access_log /var/log/gitlab/gitlab_access.log;
error_log /var/log/gitlab/gitlab_error.log;
location / {
# serve static files from defined root folder;.
# @gitlab is a named location for the upstream fallback, see below
try_files $uri $uri/index.html $uri.html @gitlab;
}
# if a file, which is not found in the root folder is requested,
# then the proxy pass the request to the upsteam (gitlab unicorn)
location @gitlab {
# If you use https make sure you disable gzip compression
# to be safe against BREACH attack
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;
}
# Enable gzip compression as per rails guide: http://guides.rubyonrails.org/asset_pipeline.html#gzip-compression
# WARNING: If you are using relative urls do remove the block below
# See config/application.rb under "Relative url support" for the list of
# other files that need to be changed for relative url support
location ~ ^/(assets)/ {
root /opt/gitlab/embedded/service/gitlab-rails/public;
# gzip_static on; # to serve pre-gzipped version
expires max;
add_header Cache-Control public;
}
error_page 502 /502.html;
}
7.重启是配置生效。
### 重启gitlab使配置生效 ###
gitlab-ctl econfigure
### 重启nginx使配置生效 ###
service nginx restart
查看状态
gitlab-ctl status
其他指令
gitlab-ctl start
gitlab-ctl stop
gitlab-ctl restart
gitlab-ctl help
# ps -ef |grep nginx
root 1905 1 0 14:48 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
www 1906 1905 0 14:48 ? 00:00:00 nginx: worker process
www 1907 1905 0 14:48 ? 00:00:00 nginx: worker process
root 13734 2883 0 15:13 pts/0 00:00:00 grep nginx
# ps -ef |grep unicorn
root 1018 1008 0 14:48 ? 00:00:00 runsv unicorn
root 1044 1018 0 14:48 ? 00:00:00 svlogd -tt /var/log/gitlab/unicorn
git 13360 1018 0 15:12 ? 00:00:00 /bin/bash /opt/gitlab/embedded/bin/gitlab-unicorn-wrapper
git 13381 1 29 15:12 ? 00:00:17 unicorn master -D -E production -c /var/opt/gitlab/gitlab-rails/etc/unicorn.rb /opt/gitlab/embedded/service/gitlab-rails/config.ru
git 13461 13381 0 15:12 ? 00:00:00 unicorn worker[0] -D -E production -c /var/opt/gitlab/gitlab-rails/etc/unicorn.rb /opt/gitlab/embedded/service/gitlab-rails/config.ru
git 13464 13381 0 15:12 ? 00:00:00 unicorn worker[1] -D -E production -c /var/opt/gitlab/gitlab-rails/etc/unicorn.rb /opt/gitlab/embedded/service/gitlab-rails/config.ru
git 13467 13381 0 15:12 ? 00:00:00 unicorn worker[2] -D -E production -c /var/opt/gitlab/gitlab-rails/etc/unicorn.rb /opt/gitlab/embedded/service/gitlab-rails/config.ru
root 13753 2883 0 15:13 pts/0 00:00:00 grep unicorn
停止gitlab
gitlab-ctl stop
gitlab-ctl reconfigure
gitlab-ctl restart
修改unicorn,给nginx用户权限。
unicorn['port'] = 1024
web_server['external_users'] = ['www','root']
sudo chmod -R o+x /var/opt/gitlab/gitlab-rails
sudo chmod -R o+x /var/opt/gitlab/gitlab-workhorse
sudo usermod -aG git www
sudo usermod -aG gitlab-www www
查看错误日志
tail -n 10 /var/log/gitlab/gitlab_error.log
MLGB的502!
我甚至把服务器都重启了!稀里糊涂就可以了,操!