Ubuntu 14.04.3安装 gitlab-ce_7.10.4(web服务)

1:系统和软件:

root@ubuntu1:/home/ubuntu1# lsb_release -a
No LSB modules are available.
distributor ID: Ubuntu
Description:    Ubuntu 14.04.3 LTS
Release:    14.04
Codename:   trusty

2:下载gitlab安装包:

https://about.gitlab.com/downloads/archives/
注:下载相应的系统对应的版本。

3:安装需要的openssh和mail服务:

sudo apt-get install openssh-server
sudo apt-get install postfix
注:邮件选择:No configuration!之后自己配置!

4:安装“gitlab-ce_7.10.4~omnibus-1_amd64.deb”,[内含Ruby、RedisNginx和Postgresql]:

sudo dpkg -i gitlab-ce_7.10.4~omnibus-1_amd64.deb

5:配置访问域名端口和邮箱:

sudo vim /etc/gitlab/gitlab.rb

#unicorn端口冲突--配置9090,认8080!
unicorn['port'] = 9090
#配置gitlab的域名或ip和端口或域名(外网)
# external_url 'http://192.168.1.110:8080'
external_url 'http://git.loveshare.me'
#配置邮件
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "eg.smtp.163.com"
gitlab_rails['smtp_port'] =25
gitlab_rails['smtp_user_name'] = "your email"
gitlab_rails['smtp_password'] = "your passwd"
gitlab_rails['smtp_domain'] = "eg.smtp.163.com"
gitlab_rails['smtp_authentication'] = :login
gitlab_rails['smtp_enable_starttls_auto'] = true
#163邮箱,修改gitlab配置的发信人
gitlab_rails['gitlab_email_from'] = "your email"
user["git_user_email"] = "your email"
注:若Nginx有权限问题问题则将Nginx.conf中启动用户修改成root.

6:GitLab进行重加载gitlab.rb配置启动:

sudo gitlab-ctl reconfigure

7:检测GitLab状态:

sudo gitlab-ctl status
run: logrotate: (pid 16722) 2161s; run: log: (pid 3316) 45362s
run: Nginx: (pid 3297) 45364s; run: log: (pid 3296) 45364s
run: postgresql: (pid 3180) 45383s; run: log: (pid 3179) 45383s
run: redis: (pid 3081) 45389s; run: log: (pid 3080) 45389s
run: sidekiq: (pid 3272) 45370s; run: log: (pid 3271) 45370s
run: unicorn: (pid 3244) 45372s; run: log: (pid 3243) 45372s

注:若状态都为down,则使用,启动:

sudo gitlab-ctl start
ok: run: logrotate: (pid 14246) 1s
ok: run: Nginx: (pid 14249) 0s
ok: run: postgresql: (pid 14257) 0s
ok: run: redis: (pid 14265) 1s
ok: run: sidekiq: (pid 14269) 0s
ok: run: unicorn: (pid 14273) 1s

8:检查GitLab的日志:

sudo gitlab-ctl tail

9:请求git的web版:http://192.168.1.110:8080/

由于GitLab包自带了Ruby、RedisNginx和Postgresql,所以也就不需要考虑太多兼容性的问题。

直接Web登录GitLab所在的服务器,并使用帐号root,密码5iveL!fe来登录GitLab{此密码为认}。

首次登录GitLab会强行让你重置密码,然后就可以进入GitLab了。

10:停止服务

sudo gitlab-ctl stop
ok: down: logrotate: 0s,normally up
ok: down: Nginx: 1s,normally up
ok: down: postgresql: 0s,normally up
ok: down: redis: 1s,normally up
ok: down: sidekiq: 0s,normally up
ok: down: unicorn: 1s,normally up

11.使用Nginx代理域名gitlab外网访问:

# gitlab配置(192.168.1.230)
sudo vim /etc/gitlab/gitlab.rb

external_url 'http://git.loveshare.me'
# Nginx配置
server {
        listen 80;
        server_name git.loveshare.me;
        proxy_redirect off;
        location / {
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header REMOTE_HOST $server_name;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         proxy_pass http://192.168.1.230:80;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
                root   html;
        }
}

问题1:注:错误码对应解释网易服务器smtp机器要求身份验证帐号和发信帐号必须一致,如果用户发送邮件时,身份验证帐号和发件人帐号是不同的,因此拒绝发送。修改gitlab.rb,修改发信人和身份验证帐号一致,163发信OK。

问题2:Nginx认监听80端口,unicorn认监听8080端口,如使用此两个端口请修改配置!

日志附件:

1:

root@dubbo:/home/install# sudo dpkg -i gitlab-ce_7.10.4~omnibus-1_amd64.deb 
Selecting prevIoUsly unselected package gitlab-ce.
(Reading database ... 56801 files and directories currently installed.)
Preparing to unpack gitlab-ce_7.10.4~omnibus-1_amd64.deb ...
Unpacking gitlab-ce (7.10.4~omnibus-1) ...
Setting up gitlab-ce (7.10.4~omnibus-1) ...
dpkg-query: package 'gitlab' is not installed
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.
gitlab: Thank you for installing GitLab!
gitlab: Configure and start GitLab by running the following command:
gitlab: 
gitlab: sudo gitlab-ctl reconfigure
gitlab: 
gitlab: GitLab should be reachable at http://dubbo
gitlab: Otherwise configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
gitlab: And running reconfigure again.
gitlab: 
gitlab: For a comprehensive list of configuration options please see the Omnibus GitLab readme
gitlab: https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md
gitlab: 
It looks like GitLab has not been installed yet; skipping the upgrade script.

2:

root@dubbo:/home/dubbo# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:32000         0.0.0.0:*               LISTEN      2334/java       
tcp        0      0 127.0.0.1:9090          0.0.0.0:*               LISTEN      14288/config.ru 
tcp        0      0 0.0.0.0:8500            0.0.0.0:*               LISTEN      14249/Nginx          
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      958/sshd        
tcp        0      0 127.0.0.1:48350         0.0.0.0:*               LISTEN      14265/redis-server 
tcp6       0      0 :::22                   :::*                    LISTEN      958/sshd 

3:

root@dubbo:/home/dubbo# ps -ef | grep gitlab
root       894     1  0 Jul11 ?        00:00:15 runsvdir -P /opt/gitlab/service log: ...........................................................................................................................................................................................................................................................................................................................................................................................................
root       906   902  0 Jul11 ?        00:00:00 svlogd -tt /var/log/gitlab/sidekiq
root       908   901  0 Jul11 ?        00:00:00 svlogd -tt /var/log/gitlab/Nginx
root       910   899  0 Jul11 ?        00:00:00 svlogd -tt /var/log/gitlab/unicorn
root       911   898  0 Jul11 ?        00:00:02 svlogd -tt /var/log/gitlab/redis
root       915   903  0 Jul11 ?        00:00:00 svlogd -tt /var/log/gitlab/logrotate
root       917   900  0 Jul11 ?        00:00:00 svlogd -tt /var/log/gitlab/postgresql
root     14249   901  0 18:27 ?        00:00:00 Nginx: master process /opt/gitlab/embedded/sbin/Nginx -p /var/opt/gitlab/Nginx
gitlab-+ 14250 14249  0 18:27 ?        00:00:00 Nginx: worker process                                   
gitlab-+ 14251 14249  0 18:27 ?        00:00:00 Nginx: worker process                                   
gitlab-+ 14252 14249  0 18:27 ?        00:00:00 Nginx: worker process                                   
gitlab-+ 14253 14249  0 18:27 ?        00:00:00 Nginx: worker process                                   
gitlab-+ 14254 14249  0 18:27 ?        00:00:00 Nginx: worker process                                   
gitlab-+ 14255 14249  0 18:27 ?        00:00:00 Nginx: worker process                                   
gitlab-+ 14257   900  0 18:27 ?        00:00:00 /opt/gitlab/embedded/bin/postgres -D /var/opt/gitlab/postgresql/data
gitlab-+ 14259 14257  0 18:27 ?        00:00:00 postgres: checkpointer process                                      
gitlab-+ 14260 14257  0 18:27 ?        00:00:00 postgres: writer process                                            
gitlab-+ 14261 14257  0 18:27 ?        00:00:00 postgres: wal writer process                                        
gitlab-+ 14262 14257  0 18:27 ?        00:00:00 postgres: autovacuum launcher process                               
gitlab-+ 14263 14257  0 18:27 ?        00:00:00 postgres: stats collector process                                   
gitlab-+ 14265   898  0 18:27 ?        00:00:01 /opt/gitlab/embedded/bin/redis-server 127.0.0.1:0                     
git      14269   902  0 18:27 ?        00:00:12 sidekiq 3.3.0 gitlab-rails [0 of 25 busy]                                                                                                                                                                                                     
git      14288     1  0 18:27 ?        00:00:08 unicorn master -D -E production -c /var/opt/gitlab/gitlab-rails/etc/unicorn.rb /opt/gitlab/embedded/service/gitlab-rails/config.ru                                              
git      14349 14288  0 18:27 ?        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      14352 14288  0 18:27 ?        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      14355 14288  0 18:27 ?        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                                           
git      14358 14288  0 18:27 ?        00:00:00 unicorn worker[3] -D -E production -c /var/opt/gitlab/gitlab-rails/etc/unicorn.rb /opt/gitlab/embedded/service/gitlab-rails/config.ru                                           
git      14361 14288  0 18:27 ?        00:00:00 unicorn worker[4] -D -E production -c /var/opt/gitlab/gitlab-rails/etc/unicorn.rb /opt/gitlab/embedded/service/gitlab-rails/config.ru                                           
git      14364 14288  0 18:27 ?        00:00:00 unicorn worker[5] -D -E production -c /var/opt/gitlab/gitlab-rails/etc/unicorn.rb /opt/gitlab/embedded/service/gitlab-rails/config.ru                                           
git      14367 14288  0 18:27 ?        00:00:00 unicorn worker[6] -D -E production -c /var/opt/gitlab/gitlab-rails/etc/unicorn.rb /opt/gitlab/embedded/service/gitlab-rails/config.ru                                           
gitlab-+ 14377 14257  0 18:27 ?        00:00:00 postgres: gitlab gitlabhq_production [local] idle                   
gitlab-+ 14382 14257  0 18:27 ?        00:00:00 postgres: gitlab gitlabhq_production [local] idle                   
gitlab-+ 14385 14257  0 18:27 ?        00:00:00 postgres: gitlab gitlabhq_production [local] idle                   
gitlab-+ 14554 14257  0 18:28 ?        00:00:00 postgres: gitlab gitlabhq_production [local] idle                   
gitlab-+ 14753 14257  0 18:30 ?        00:00:00 postgres: gitlab gitlabhq_production [local] idle                   
root     16860 11942  0 19:05 pts/0    00:00:00 grep --color=auto gitlab

相关文章

ubuntu退出redis的示例:指定配置文件方式启动源码redis:roo...
ubuntu中mysql改密码忘了的解决方法:1.在终端中切换到root权...
ubuntu安装mysql失败的解决方法原因:可能是原有的MySQL还有...
使用centos和ubuntu建站的区别有以下几点1.CentOS是Linux发行...
ubuntu图形界面和字符界面切换的方法:可以通过快捷键CTRL+A...
ubuntu中重启mysql失败的解决方法1.首先,在ubuntu命令行中,...