centos6上 tengine本地代理gitlab服务器部署

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos6上 tengine本地代理gitlab服务器部署相关的知识,希望对你有一定的参考价值。

1. gitlab部署

rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install curl policycoreutils openssh-server openssh-clients postfix -y
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
yum install -y gitlab-ce
yum install -y git
###注意:gitlab默认会使用80和8080端口,所以配置nginx和gitlab要注意

2. tengine部署(其实这里的代理使用nginx最新版更合适,我这使用tengine是因为环境比较统一)

useradd nginx -s /sbin/nologin -M
yum -y install gcc gcc-c++ autoconf automake
yum -y install pcre pcre-devel
yum -y install openssl openssl-devel
yum -y install  zlib-devel
yum -y install libxml2 libxml2-dev
yum -y install libxslt-devel
yum -y install gd-devel
yum -y install perl-devel perl-ExtUtils-Embed
yum -y install GeoIP GeoIP-devel GeoIP-data

cd /usr/local/src
wget http://tengine.taobao.org/download/tengine-2.2.1.tar.gz
wget http://www.openssl.org/source/openssl-1.0.2.tar.gz
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
tar xf tengine-2.2.1.tar.gz
tar xf openssl-1.0.2.tar.gz
tar xf pcre-8.38.tar.gz

cd pcre-8.38
./configure --prefix=/usr/local/pcre
make && make install

cd ../openssl-1.0.2
./config --prefix=/usr/local/openssl
make && make install

mkdir /usr/local/nginx-stable/conf -p
cd ../tengine-2.2.1

./configure                 --user=nginx                 --group=nginx                 --prefix=/usr/local/nginx-stable                 --conf-path=/usr/local/nginx-stable/conf/nginx.conf                 --pid-path=/usr/local/nginx-stable/nginx.pid                 --with-openssl=/usr/local/src/openssl-1.0.2                 --with-pcre=/usr/local/src/pcre-8.38                 --with-file-aio                 --with-http_v2_module                 --with-http_ssl_module                 --with-http_upstream_check_module                 --with-http_realip_module                 --with-http_stub_status_module                 --with-http_sub_module                 --with-http_gzip_static_module                 --with-http_addition_module                 --with-http_xslt_module                 --with-http_image_filter_module                 --with-http_geoip_module                 --with-http_dav_module                 --with-http_flv_module                 --with-http_mp4_module                 --with-http_gunzip_module                 --with-http_random_index_module                 --with-http_secure_link_module                 --with-http_degradation_module                 --with-http_auth_request_module                 --with-http_perl_module                 --with-http_slice_module                 --with-select_module                 --with-poll_module                 --with-mail                 --with-mail_ssl_module                 --with-pcre                 --with-pcre-jit 
make && make install

3. 到这里两个软件部署完成,开始配置

3.1 gitlab配置

cd /etc/gitlab

###
vim gitlab.rb
#修改gitlab配置文件第13行(ip改成域名)
external_url ‘http://git.linux-test.com‘

###
vim /var/opt/gitlab/gitlab-rails/etc/gitlab.yml
#修改配置文件第13行host
host: git.linux-test.com
#修改配置文件第41行email
email_from: [email protected]

3.2 加载gitlab配置文件启动

#加载配置文件
gitlab-ctl reconfigure
#固定套路
gitlab-ctl start
gitlab-ctl restart
gitlab-ctl stop

3.3 配置nginx

cd /usr/local/nginx/conf

vim nginx.conf
#主配置文件中http标签加入以下内容,当然也可以重写主配置文件
client_body_buffer_size    50m;
sendfile        on;
include vhost/*.conf;
####

mkdri vhost
cd vhost

vim git_domain_name.conf
#配置gitlab域名代理
upstream  git_domain {
server  localhost:8080;
}

server {
        listen 80;
                server_name git.linux-test.com;
                access_log logs/git.access.log ;
                error_log logs/git.error.log ;
        location / {
                client_max_body_size 50m;

    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://localhost:8080;
    index index.html index.htm;
}

}

3.4 检查nginx语法,启动

#检测nginx语法
/usr/local/nginx/sbin/nginx -t
#出现ok和successful表明语法无误
/usr/local/nginx/sbin/nginx

3.5 我可能有地方写错了,nginx和gitlab变成了守护进程

 #如果有大佬发现问题,可以给个评论讲解一下

以上是关于centos6上 tengine本地代理gitlab服务器部署的主要内容,如果未能解决你的问题,请参考以下文章

CentOS 7.4 Tengine安装配置详解

CentOS6.5 安装+ Tengine + PHP + MySQL

centos6.5下tengine-2.2.2简易安装记录

搭建高性能 tengine

Tengine 四层代理:

haproxy实现7层代理