gitlab与已安装nginx(tengine)冲突解决方案,使用自己安装的nginx(tengine)

今天遇到安装的gitlab中集成的nginx(tengine),与通过OneinStack提供的脚本安装的nginx(tengine)冲突了,无法使用已经安装的nginx(tengine);gitlab中继承的nginx会替代已经安装的。因此提供以下解决方案。

gitlab的配置在

/var/opt/gitlab/nginx/conf/nginx.conf
/var/opt/gitlab/nginx/conf/gitlab-http.conf

 

gitlab设置端口的地方是这/etc/gitlab/gitlab.rb

经过乱敲一桶命令之后,根据获取到的信息想到了解决方案,一下给出最终配置结果,中间经过很多了的测试总结出来的简单配置结果。希望对大家有帮助。

nginx(tengine)安装方式

lnmp参考(https://oneinstack.com/)

gitlab安装方式

本教程稍后出

修改/opt/gitlab/service/nginx/run 文件

源内容

#!/bin/sh 
exec 2>&1
cd /var/opt/gitlab/nginxexec chpst -P /opt/gitlab/embedded/sbin/nginx -p 
/var/opt/gitlab/nginx 

修改后的新内容

#!/bin/sh 
exec 2>&1
cd /usr/local/nginx或tengine
exec chpst -P /usr/local/nginx或tengine/sbin/nginx -p 
/usr/local/nginx或tengine

修改/var/opt/gitlab/nginx/conf/gitlab-http.conf文件

/var/opt/gitlab/nginx/conf/nginx.conf 文件中,去除与/usr/local/nginx/conf/nginx.conf 文件中的冲突选项

nginx文件修后可以使用”nginx -t”来检测配置文件是否正确使用nginx -s reload或service nginx reload进行重启加载配置文件

修改/usr/local/nginx/conf/nginx.conf文件

配置文件开头加入

daemon off;

使nginx不以守护进程方式运行

在nginx.conf配置段增加

include /var/opt/gitlab/nginx/conf/gitlab-http.conf;

修改目录权限

cd /var/opt/gitlab && chgrp www gitlab-workhorse 
cd /var/opt/gitlab/nginx chown -R www:www uwsgi_temp scgi_temp proxy_temp proxy_cache fastcgi_temp client_body_temp 
cd /usr/local/nginx或tengine chown -R www:www uwsgi_temp scgi_temp proxy_temp proxy_cache fastcgi_temp client_body_temp

干掉nginx gitlab 会自动启动新的nginx进程

killall nginx

如果提示“killall命令不存在”,可通过以下命令进行安装

yum install psmisc

安装完成后再执行killall命令即可

配置好之后,提供后台添加的账号和注册的账号都能收到邮件,经过在百度查找资料,多次尝试,得到一下配置

gitlab邮箱配置

修改/etc/gitlab/gitlab.rb 文件

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 25
#gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "88888888@qq.com"
#QQ邮箱生产的专用收发邮件的密码
gitlab_rails['smtp_password'] = "123132151456"
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "plain"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['gitlab_email_from']='88888888@qq.com'
user['git_user_email'] = "88888888@qq.com"

重启所有服务

为了保险期间,先停止后启动,或者直接重启服务

gitlab-ctl stop #停止服务
gitlab-ctl start #启动服务
gitlab-ctl restart #重启
gitlab-ctl tail #查看是否有错误

至此,gitlab与已安装的ningx或tenginx冲突问题完美解决

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注