ubuntu16.04+gitlab+不使用绑定的nginx

来源:互联网 发布:plc与单片机区别 编辑:程序博客网 时间:2024/05/30 05:02

  • gitlab的安装
  • gitlab的配置
    • 1 gitlab版本号的查看
    • 2 gitlab的ssh端口修改
      • 21 打开配置文件
      • 22 使用命令重新生成配置
    • 3 https化
      • 31 上传证书或者使用自己创建的具体创建的看我另一篇文章
  • 不使用绑定的nginx
    • 1 gitlab配置做修改
  • 其他的问题
    • 1 配置修改ssh端口号

构建使用4天时间(最近离职在宿舍,所以找些东西来做),主要是卡在了,nginx.最开始的方案是共存.然后在做了,这个使用自身的nginx.网上资料太少,官方文档也主要针对centos,故而花了时间来做一篇ubuntu的.较为舒适的还是使用共存的方案,只需要改下配置即可.但是共存太粗暴.所以还是用nginx负载均衡的玩法做了出来.希望能给需要的人提供一点帮助.

后期慢慢的会,转移到我的主页上去, mypzh.com,目前的打算是blog系统打造,商城系统打造.主要csdn广告现在太多了.也当自己用laravel vue nodejs这些练练手.呵呵

本人为飘寒原创 如需转载 请注明出处 谢谢

1. gitlab的安装

参考:官方文档

sudo apt updatesudo apt upgradesudo apt-get install curl openssh-server ca-certificates postfix

发送邮件选择 ‘Internet Site’

sudo gitlab-ctl reconfigure

现在 可以直接使用了

2. gitlab的配置

2.1 gitlab版本号的查看

cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

2.2 gitlab的ssh端口修改

2.2.1 打开配置文件

sudo vim /etc/gitlab/gitlab.rb 

然后修改你的端口

gitlab_rails['gitlab_shell_ssh_port']=2000

注意:需要与下面ssh配置文件中port一致,如果你没有修改ssh默认端口,那么端口修改可以跳过

sudo vim /etc/ssh/sshd_config 

2.2.2 使用命令重新生成配置

sudo gitlab-ctl reconfigure

2.3 https化

2.3.1 上传证书或者使用自己创建的(具体创建的看我另一篇文章)

vim /etc/gitlab/gitlab.rb 

修改下面配置

external_url 'https://mypzh.com'

3. 不使用绑定的nginx

3.1 gitlab配置做修改

vim /etc/gitlab/gitlab.rb 

修改下面配置

nginx['enable'] = falseweb_server['external_users'] = ['www-data']

版本8以前的不适用

upstream gitlab-workhorse {  server unix:/var/opt/gitlab/gitlab-workhorse/socket fail_timeout=0;}server {  listen 0.0.0.0:80;  listen [::]:80 ipv6only=on default_server;  server_name mypzh.com;  #修改成你的地址  server_tokens off;   return 301 https://$http_host$request_uri;  access_log  /var/log/nginx/gitlab_access.log;  error_log   /var/log/nginx/gitlab_error.log;}server {  listen 0.0.0.0:443 ssl;  listen [::]:443 ipv6only=on ssl default_server;  server_name mypzh.com; #修改成你的地址  root /opt/gitlab/embedded/service/gitlab-rails/public;  ssl on;  ssl_certificate /etc/nginx/cert/mypzh.com.pem;#我放的是阿里云生成的  ssl_certificate_key /etc/nginx/cert/mypzh.com.key;#我放的是阿里云生成的  ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;  ssl_prefer_server_ciphers on;  ssl_session_cache shared:SSL:10m;  ssl_session_timeout 5m;  access_log  /var/log/nginx/gitlab_access.log;  error_log   /var/log/nginx/gitlab_error.log;  location / {    client_max_body_size 0;    gzip off;    proxy_read_timeout      300;    proxy_connect_timeout   300;    proxy_redirect          off;    proxy_http_version 1.1;    proxy_set_header    Host                $http_host;    proxy_set_header    X-Real-IP           $remote_addr;    proxy_set_header    X-Forwarded-Ssl     on;    proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;    proxy_set_header    X-Forwarded-Proto   $scheme;    proxy_pass http://gitlab-workhorse;  }}

4.其他的问题

4.1 配置修改ssh端口号:

gitlab_rails['gitlab_shell_ssh_port'] = 2000
原创粉丝点击