Commit fbc2f834437d8d62c1eaddaafcdedaf81149b584

Authored by David Silva
1 parent 65d1973f
Exists in master

Add steps to deploy gitlab 8.5

  - Configure nginx.
  - Create another admin user in database
  - Restart gitlab service as last step
Showing 2 changed files with 57 additions and 26 deletions   Show diff stats
@@ -13,6 +13,11 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| @@ -13,6 +13,11 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
13 config.vm.provision "shell", keep_color: true, path: 'provision.sh' 13 config.vm.provision "shell", keep_color: true, path: 'provision.sh'
14 14
15 #config.vm.network :forwarded_port, guest: 8080, host: 8080 # Gitlab 15 #config.vm.network :forwarded_port, guest: 8080, host: 8080 # Gitlab
16 - config.vm.network :forwarded_port, guest: 8081, host: 8081 # Nginx 16 + config.vm.network :forwarded_port, guest: 8081, host: 4567 # Nginx
  17 +
  18 + config.vm.provider "virtualbox" do |v|
  19 + v.memory = 2048
  20 + v.cpus = 2
  21 + end
17 22
18 end 23 end
@@ -80,35 +80,53 @@ enable_start_service gitlab @@ -80,35 +80,53 @@ enable_start_service gitlab
80 sudo -u git bundle exec rake db:setup RAILS_ENV=production && touch /var/lib/gitlab/setup.done 80 sudo -u git bundle exec rake db:setup RAILS_ENV=production && touch /var/lib/gitlab/setup.done
81 81
82 cat << EOF > /etc/nginx/conf.d/gitlab.conf 82 cat << EOF > /etc/nginx/conf.d/gitlab.conf
83 -upstream gitlab {  
84 - server 0.0.0.0:8080 fail_timeout=10s; 83 +upstream gitlab-workhorse {
  84 + server unix:/usr/lib/gitlab/tmp/sockets/gitlab-workhorse.socket fail_timeout=10s;
85 } 85 }
86 86
87 server { 87 server {
88 - listen *:8081;  
89 - server_name localhost:8081;  
90 - underscores_in_headers on;  
91 - access_log /var/log/nginx/gitlab.access.log;  
92 - error_log /var/log/nginx/gitlab.error.log;  
93 - client_max_body_size 20m;  
94 -  
95 - location /gitlab/assets/ {  
96 - alias /usr/lib/gitlab/public/assets/;  
97 - } 88 + listen *:8081 default_server;
  89 + large_client_header_buffers 4 32k;
  90 + server_name gitlab.dev; ## Replace this with something like gitlab.example.com
  91 + server_tokens off; ## Don't show the nginx version number, a security best practice
  92 + root /usr/lib/gitlab/public;
98 93
99 - location /gitlab/uploads/ {  
100 - alias /usr/lib/gitlab/public/uploads/;  
101 - } 94 + client_max_body_size 20m;
  95 +
  96 + access_log /var/log/nginx/gitlab_access.log;
  97 + error_log /var/log/nginx/gitlab_error.log;
  98 +
  99 +location / {
  100 +try_files \$uri \$uri/index.html \$uri.html @gitlab;
  101 +}
102 102
103 - location / {  
104 - proxy_pass http://gitlab;  
105 - proxy_read_timeout 90;  
106 - proxy_connect_timeout 90; 103 +location @gitlab {
  104 + client_max_body_size 0;
  105 + gzip off;
  106 +
  107 + proxy_read_timeout 300;
  108 + proxy_connect_timeout 300;
107 proxy_redirect off; 109 proxy_redirect off;
108 - proxy_set_header Host localhost:8081;  
109 - proxy_set_header X-Real-IP \$remote_addr;  
110 - proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for; 110 +
  111 + proxy_http_version 1.1;
  112 +
  113 + proxy_set_header Host \$http_host;
  114 + proxy_set_header X-Real-IP \$remote_addr;
  115 + proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
  116 + proxy_set_header X-Forwarded-Proto \$scheme;
  117 +
  118 + proxy_pass http://gitlab-workhorse;
  119 +}
  120 +
  121 + location ~ ^/(assets)/ {
  122 + root /usr/lib/gitlab/public;
  123 +
  124 + gzip_static on; # to serve pre-gzipped version
  125 + expires max;
  126 + add_header Cache-Control public;
111 } 127 }
  128 +
  129 + error_page 502 /502.html;
112 } 130 }
113 EOF 131 EOF
114 132
@@ -151,8 +169,9 @@ sudo chmod -R ug-s /var/lib/gitlab-shell/repositories/ @@ -151,8 +169,9 @@ sudo chmod -R ug-s /var/lib/gitlab-shell/repositories/
151 sudo find /var/lib/gitlab-shell/repositories/ -type d -print0 | sudo xargs -0 chmod g+s 169 sudo find /var/lib/gitlab-shell/repositories/ -type d -print0 | sudo xargs -0 chmod g+s
152 sudo chmod -R 777 /var/log/gitlab-shell/ 170 sudo chmod -R 777 /var/log/gitlab-shell/
153 171
154 -cat << EOF > /usr/lib/gitlab-shell/config.yml 172 +rm /usr/lib/gitlab-shell/config.yml
155 173
  174 +cat << EOF > /usr/lib/gitlab-shell/config.yml
156 user: git 175 user: git
157 gitlab_url: "http://127.0.0.1:8080/gitlab" 176 gitlab_url: "http://127.0.0.1:8080/gitlab"
158 177
@@ -180,12 +199,19 @@ log_level: INFO @@ -180,12 +199,19 @@ log_level: INFO
180 audit_usernames: false 199 audit_usernames: false
181 EOF 200 EOF
182 201
  202 +chown -R git.git /var/lib/gitlab-shell/
183 203
184 -  
185 -enable_start_service gitlab 204 +systemctl restart gitlab
186 205
187 sudo -u git env PATH=/opt/rh/rh-ruby22/root/usr/bin/:/opt/rh/nodejs010/root/usr/bin/:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin LD_LIBRARY_PATH=/opt/rh/rh-ruby22/root/usr/lib64:/opt/rh/nodejs010/root/lib64/:/opt/rh/v8314/root/usr/lib64/ bundle exec rake db:migrate RAILS_ENV=production 206 sudo -u git env PATH=/opt/rh/rh-ruby22/root/usr/bin/:/opt/rh/nodejs010/root/usr/bin/:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin LD_LIBRARY_PATH=/opt/rh/rh-ruby22/root/usr/lib64:/opt/rh/nodejs010/root/lib64/:/opt/rh/v8314/root/usr/lib64/ bundle exec rake db:migrate RAILS_ENV=production
188 207
189 sudo -u git env PATH=/opt/rh/rh-ruby22/root/usr/bin/:/opt/rh/nodejs010/root/usr/bin/:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin LD_LIBRARY_PATH=/opt/rh/rh-ruby22/root/usr/lib64:/opt/rh/nodejs010/root/lib64/:/opt/rh/v8314/root/usr/lib64/ bundle exec rake assets:precompile RAILS_ENV=production 208 sudo -u git env PATH=/opt/rh/rh-ruby22/root/usr/bin/:/opt/rh/nodejs010/root/usr/bin/:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin LD_LIBRARY_PATH=/opt/rh/rh-ruby22/root/usr/lib64:/opt/rh/nodejs010/root/lib64/:/opt/rh/v8314/root/usr/lib64/ bundle exec rake assets:precompile RAILS_ENV=production
190 209
  210 +#create new root user
  211 +sed -i "s|username: 'root'|username: 'devroot'|" /usr/lib/gitlab/db/fixtures/production/001_admin.rb
  212 +
  213 +sudo -u git env PATH=/opt/rh/rh-ruby22/root/usr/bin/:/opt/rh/nodejs010/root/usr/bin/:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin LD_LIBRARY_PATH=/opt/rh/rh-ruby22/root/usr/lib64:/opt/rh/nodejs010/root/lib64/:/opt/rh/v8314/root/usr/lib64/ bundle exec rake db:seed_fu RAILS_ENV=production
  214 +
191 sudo -u git env PATH=/opt/rh/rh-ruby22/root/usr/bin/:/opt/rh/nodejs010/root/usr/bin/:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin LD_LIBRARY_PATH=/opt/rh/rh-ruby22/root/usr/lib64:/opt/rh/nodejs010/root/lib64/:/opt/rh/v8314/root/usr/lib64/ bundle exec rake gitlab:check RAILS_ENV=production 215 sudo -u git env PATH=/opt/rh/rh-ruby22/root/usr/bin/:/opt/rh/nodejs010/root/usr/bin/:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin LD_LIBRARY_PATH=/opt/rh/rh-ruby22/root/usr/lib64:/opt/rh/nodejs010/root/lib64/:/opt/rh/v8314/root/usr/lib64/ bundle exec rake gitlab:check RAILS_ENV=production
  216 +
  217 +systemctl restart gitlab