-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
557 lines (413 loc) · 47.5 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge" >
<title>Hexo</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="description">
<meta property="og:type" content="website">
<meta property="og:title" content="Hexo">
<meta property="og:url" content="http://yoursite.com/index.html">
<meta property="og:site_name" content="Hexo">
<meta property="og:description">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Hexo">
<meta name="twitter:description">
<link rel="alternative" href="/atom.xml" title="Hexo" type="application/atom+xml">
<link rel="icon" href="/favicon.png">
<link rel="stylesheet" href="/css/style.css" type="text/css">
</head>
<body>
<div id="container">
<div class="left-col">
<div class="overlay"></div>
<div class="intrude-less">
<header id="header" class="inner">
<a href="/" class="profilepic">
<img lazy-src="null" class="js-avatar">
</a>
<hgroup>
<h1 class="header-author"><a href="/">John Doe</a></h1>
</hgroup>
<div class="switch-btn">
<div class="icon">
<div class="icon-ctn">
<div class="icon-wrap icon-house" data-idx="0">
<div class="birdhouse"></div>
<div class="birdhouse_holes"></div>
</div>
<div class="icon-wrap icon-ribbon hide" data-idx="1">
<div class="ribbon"></div>
</div>
<div class="icon-wrap icon-link hide" data-idx="2">
<div class="loopback_l"></div>
<div class="loopback_r"></div>
</div>
<div class="icon-wrap icon-me hide" data-idx="3">
<div class="user"></div>
<div class="shoulder"></div>
</div>
</div>
</div>
<div class="tips-box hide">
<div class="tips-arrow"></div>
<ul class="tips-inner">
<li>菜单</li>
<li>標籤</li>
<li>友情链接</li>
<li>關於</li>
</ul>
</div>
</div>
<div class="switch-area">
<div class="switch-wrap">
<section class="switch-part switch-part1">
<nav class="header-menu">
<ul>
<li><a href="/">主页</a></li>
<li><a href="/archives">所有文章</a></li>
</ul>
</nav>
<nav class="header-nav">
<div class="social">
<a class="github" target="_blank" href="/#" title="github">github</a>
<a class="weibo" target="_blank" href="/#" title="weibo">weibo</a>
<a class="rss" target="_blank" href="/#" title="rss">rss</a>
<a class="zhihu" target="_blank" href="/#" title="zhihu">zhihu</a>
</div>
</nav>
</section>
<section class="switch-part switch-part2">
<div class="widget tagcloud" id="js-tagcloud">
<a href="/tags/gitlab/" style="font-size: 10px;">gitlab</a>
</div>
</section>
<section class="switch-part switch-part3">
<div id="js-friends">
<a target="_blank" class="main-nav-link switch-friends-link" href="http://localhost:4000/">奥巴马的博客</a>
<a target="_blank" class="main-nav-link switch-friends-link" href="http://localhost:4000/">卡卡的美丽传说</a>
<a target="_blank" class="main-nav-link switch-friends-link" href="http://localhost:4000/">本泽马的博客</a>
<a target="_blank" class="main-nav-link switch-friends-link" href="http://localhost:4000/">吉格斯的博客</a>
<a target="_blank" class="main-nav-link switch-friends-link" href="http://localhost:4000/">习大大大不同</a>
<a target="_blank" class="main-nav-link switch-friends-link" href="http://localhost:4000/">托蒂的博客</a>
</div>
</section>
<section class="switch-part switch-part4">
<div id="js-aboutme">我是谁,我从哪里来,我到哪里去?我就是我,是颜色不一样的吃货…</div>
</section>
</div>
</div>
</header>
</div>
</div>
<div class="mid-col">
<nav id="mobile-nav">
<div class="overlay">
<div class="slider-trigger"></div>
<h1 class="header-author js-mobile-header hide">John Doe</h1>
</div>
<div class="intrude-less">
<header id="header" class="inner">
<div class="profilepic">
<img lazy-src="null" class="js-avatar">
</div>
<hgroup>
<h1 class="header-author">John Doe</h1>
</hgroup>
<nav class="header-menu">
<ul>
<li><a href="/">主页</a></li>
<li><a href="/archives">所有文章</a></li>
<div class="clearfix"></div>
</ul>
</nav>
<nav class="header-nav">
<div class="social">
<a class="github" target="_blank" href="/#" title="github">github</a>
<a class="weibo" target="_blank" href="/#" title="weibo">weibo</a>
<a class="rss" target="_blank" href="/#" title="rss">rss</a>
<a class="zhihu" target="_blank" href="/#" title="zhihu">zhihu</a>
</div>
</nav>
</header>
</div>
</nav>
<div class="body-wrap">
<article id="post-gitlab一键安装" class="article article-type-post" itemscope itemprop="blogPost">
<div class="article-meta">
<a href="/2016/01/27/gitlab一键安装/" class="article-date">
<time datetime="2016-01-27T08:31:18.000Z" itemprop="datePublished">2016-01-27</time>
</a>
</div>
<div class="article-inner">
<input type="hidden" class="isFancy" />
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2016/01/27/gitlab一键安装/">gitlab一键安装</a>
</h1>
</header>
<div class="article-entry" itemprop="articleBody">
<p>= 一.GitLab背景介绍</p>
<p>GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。</p>
<p>= 二.安装软件的版本<br>== 1.系统版本</p>
<table>
<thead>
<tr>
<th>系统信息</th>
<th>具体值</th>
</tr>
</thead>
<tbody>
<tr>
<td>centos6.6</td>
<td>64位</td>
</tr>
<tr>
<td>MEM</td>
<td>1G</td>
</tr>
<tr>
<td>CPU</td>
<td>i5-4210U CPU @ 1.70GHz(单核)</td>
</tr>
<tr>
<td>ip地址</td>
<td>10.0.1.217</td>
</tr>
</tbody>
</table>
<p>== 2.软件版本号</p>
<table>
<thead>
<tr>
<th>软件名称</th>
<th>版本号</th>
</tr>
</thead>
<tbody>
<tr>
<td>gitlab</td>
<td>v7.13.1</td>
</tr>
<tr>
<td>gitlab-shell</td>
<td>2.6.3</td>
</tr>
<tr>
<td>gitlab API</td>
<td>v3</td>
</tr>
<tr>
<td>Ruby</td>
<td>2.1.6p336</td>
</tr>
<tr>
<td>Rails</td>
<td>4.1.11</td>
</tr>
<tr>
<td>nginx</td>
<td>1.7.12</td>
</tr>
<tr>
<td>redis</td>
<td>2.8.20</td>
</tr>
<tr>
<td>python</td>
<td>2.7</td>
</tr>
<tr>
<td>PostgreSQL</td>
<td>9.2.10</td>
</tr>
</tbody>
</table>
<p>= 三.安装过程<br>gitlab官方的一键安装包地址为 <a href="https://about.gitlab.com/downloads/" target="_blank" rel="external">https://about.gitlab.com/downloads/</a></p>
<p>==1.安装必要的支持软件<br><figure class="highlight sql"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">yum <span class="operator"><span class="keyword">install</span> curl openssh-<span class="keyword">server</span> postfix cronie -y</span></span><br></pre></td></tr></table></figure></p>
<p>==2.开启邮件服务(postfix发送邮件)<br><figure class="highlight crmsh"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">service postfix <span class="literal">start</span></span><br></pre></td></tr></table></figure></p>
<p>==3.增加gitlab软件包和安装软件,并且启动各个服务<br><figure class="highlight vim"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">curl http<span class="variable">s:</span>//packages.gitlab.<span class="keyword">com</span>/install/repositories/gitlab/gitlab-<span class="keyword">ce</span>/script.rpm.<span class="keyword">sh</span> | sudo bash </span><br><span class="line">yum install gitlab-<span class="keyword">ce</span> -<span class="keyword">y</span> (安装时间较长,需要下载大概<span class="number">300</span>M的文件)</span><br></pre></td></tr></table></figure></p>
<p>==4. gitlab生成用户名和reconfigure<br><figure class="highlight avrasm"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">sudo gitlab-ctl reconfigure </span><br><span class="line">sudo gitlab-ctl restart</span><br><span class="line"><span class="label">Username:</span> root </span><br><span class="line"><span class="label">Password:</span> <span class="number">5</span>iveL!fe</span><br></pre></td></tr></table></figure></p>
<p>=四.gitlab命令使用<br><figure class="highlight vim"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">gitlab一键yum安装之后,生成的文件在 /<span class="keyword">opt</span>/gitlab/ 和 /var/<span class="keyword">opt</span>/gitlab/</span><br><span class="line">gitlab-ctl <span class="keyword">stop</span> 停止gitlab有关的服务(nginx,<span class="keyword">ruby</span>,postgres,gitlab,redis等)</span><br><span class="line">gitlab-ctl start </span><br><span class="line">gitlab-ctl restart</span><br><span class="line">gitlab-ctl reconfigure 修改gitlab配置之后,配置生效</span><br><span class="line">gitlab-ctl <span class="keyword">help</span> 查看具体每个命令的用法</span><br></pre></td></tr></table></figure></p>
<p>=五.使用说明<br> 安装目录为:/opt/gitlab<br> gitlab 备份: gitlab-rake gitlab:backup:create<br> 会在/var/opt/gitlab/backups目录下创建一个名称类似为1393513186_gitlab_backup.tar的压缩包, 这个压缩包就是Gitlab整个的完整部分<br> gitlab配置文件:/etc/gitlab/gitlab.rb ,配置完成后可使用gitlab-ctl reconfigure 使配置生效</p>
<p> 具体配置参考:<a href="http://doc.gitlab.com/omnibus/" target="_blank" rel="external">http://doc.gitlab.com/omnibus/</a></p>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/gitlab/">gitlab</a></li></ul>
</div>
<div class="clearfix"></div>
</div>
</div>
</article>
<article id="post-gitlab源码安装" class="article article-type-post" itemscope itemprop="blogPost">
<div class="article-meta">
<a href="/2016/01/27/gitlab源码安装/" class="article-date">
<time datetime="2016-01-27T08:31:18.000Z" itemprop="datePublished">2016-01-27</time>
</a>
</div>
<div class="article-inner">
<input type="hidden" class="isFancy" />
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2016/01/27/gitlab源码安装/">gitlab源码安装</a>
</h1>
</header>
<div class="article-entry" itemprop="articleBody">
<p>一.GitLab背景介绍</p>
<p>GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。</p>
<p>= 一.GitLab背景介绍</p>
<p>GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。</p>
<p>= 二.安装软件的版本<br>== 1.系统版本</p>
<table>
<thead>
<tr>
<th>系统信息</th>
<th>具体值</th>
</tr>
</thead>
<tbody>
<tr>
<td>centos6.6</td>
<td>64位</td>
</tr>
<tr>
<td>MEM</td>
<td>1G</td>
</tr>
<tr>
<td>CPU</td>
<td>i5-4210U CPU @ 1.70GHz(单核)</td>
</tr>
<tr>
<td>ip地址</td>
<td>10.0.1.217</td>
</tr>
</tbody>
</table>
<p>== 2.软件版本号</p>
<table>
<thead>
<tr>
<th>软件名称</th>
<th>版本号</th>
</tr>
</thead>
<tbody>
<tr>
<td>gitlab</td>
<td>v7.13.1</td>
</tr>
<tr>
<td>gitlab-shell</td>
<td>2.6.3</td>
</tr>
<tr>
<td>gitlab API</td>
<td>v3</td>
</tr>
<tr>
<td>Ruby</td>
<td>2.1.6p336</td>
</tr>
<tr>
<td>Rails</td>
<td>4.1.11</td>
</tr>
<tr>
<td>nginx</td>
<td>1.7.12</td>
</tr>
<tr>
<td>redis</td>
<td>2.8.20</td>
</tr>
<tr>
<td>python</td>
<td>2.7</td>
</tr>
<tr>
<td>PostgreSQL</td>
<td>9.2.10</td>
</tr>
</tbody>
</table>
<p>三.安装过程<br>1.安装gitlab所需要的依赖包和软件<br><figure class="highlight vim"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">yum -<span class="keyword">y</span> install <span class="keyword">vim</span>-enhanced readline readline-devel ncurses-devel gdbm-devel glibc-devel <span class="keyword">tcl</span>-devel openssl-devel curl-devel </span><br><span class="line">expat-devel db4-devel byacc sqlite-devel gcc-<span class="keyword">c</span>++ libyaml libyaml-devel libffi libffi-devel libxml2 libxml2-devel libxslt </span><br><span class="line">libxslt-devel libicu libicu-devel <span class="built_in">system</span>-config-firewall-tui <span class="keyword">python</span>-devel sudo wget crontabs logwatch logrotate <span class="keyword">perl</span>-Time-HiRes</span><br></pre></td></tr></table></figure></p>
<p>2.安装redis,配置并且启动redis<br><figure class="highlight stylus"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">wget http:<span class="comment">//redis.googlecode.com/files/redis-2.6.13.tar.gz</span></span><br><span class="line">tar xzf redis-<span class="number">2.6</span>.<span class="number">13</span><span class="class">.tar</span><span class="class">.gz</span></span><br><span class="line">cd redis-<span class="number">2.6</span>.<span class="number">13</span></span><br><span class="line">make</span><br><span class="line">make install</span><br><span class="line">cp redis<span class="class">.conf</span> /etc/</span><br><span class="line">vim /etc/redis<span class="class">.conf</span> #修改daemonize yes---目的使进程在后台运行</span><br><span class="line">cd /usr/local/bin</span><br><span class="line">./redis-server /etc/redis<span class="class">.conf</span> #启动redis</span><br></pre></td></tr></table></figure></p>
<p>3.安装git<br><figure class="highlight cpp"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br></pre></td><td class="code"><pre><span class="line">yum install curl-devel expat-devel gettext-devel -y</span><br><span class="line">yum install openssl-devel zlib-devel perl-devel -y</span><br><span class="line">yum install perl-ExtUtils-CBuilder -y</span><br><span class="line">yum install perl-ExtUtils-MakeMaker -y</span><br><span class="line">cd /mnt/</span><br><span class="line"><span class="preprocessor">#安装libiconv</span></span><br><span class="line">wget http:<span class="comment">//ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz</span></span><br><span class="line">tar -zxvf libiconv-<span class="number">1.14</span>.tar.gz</span><br><span class="line">cd libiconv-<span class="number">1.14</span></span><br><span class="line">./configure </span><br><span class="line">&& make && make install</span><br><span class="line">安装git2<span class="number">.2</span><span class="number">.0</span></span><br><span class="line">wget https:<span class="comment">//github.com/git/git/archive/v2.2.0.tar.gz</span></span><br><span class="line">tar xf v2<span class="number">.2</span><span class="number">.0</span></span><br><span class="line">cd git-<span class="number">2.2</span><span class="number">.0</span></span><br><span class="line">make prefix=/Data/apps/git all</span><br><span class="line">make configure</span><br><span class="line">./configure </span><br><span class="line"> make</span><br><span class="line"> make install</span><br></pre></td></tr></table></figure></p>
<p>4.安装ruby<br><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">cd</span> /mnt/ </span><br><span class="line">curl --progress ftp://ftp.ruby-lang.org/pub/ruby/<span class="number">2.0</span>/ruby-<span class="number">2.0</span>.<span class="number">0</span>-p353.tar.gz | tar xz</span><br><span class="line"><span class="built_in">cd</span> ruby-<span class="number">2.0</span>.<span class="number">0</span>-p353</span><br><span class="line">./configure --prefix=/usr/<span class="built_in">local</span>/</span><br><span class="line">make && make install </span><br><span class="line"><span class="comment">#更换gem的源为淘宝的,国外的源不稳定</span></span><br><span class="line">gem <span class="built_in">source</span> -r https://rubygems.org/</span><br><span class="line">gem <span class="built_in">source</span> <span class="operator">-a</span> http://ruby.taobao.org/</span><br><span class="line"><span class="comment">#安装bundler</span></span><br><span class="line">gem install bundler --no-ri --no-rdoc</span><br></pre></td></tr></table></figure></p>
<p>5.系统用户<br><figure class="highlight brainfuck"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">#创建用户git</span></span><br><span class="line"><span class="comment">adduser</span> <span class="literal">-</span><span class="literal">-</span><span class="comment">system</span> <span class="literal">-</span><span class="literal">-</span><span class="comment">shell</span> <span class="comment">/bin/bash</span> <span class="literal">-</span><span class="literal">-</span><span class="comment">comment</span> <span class="comment">'GitLab'</span> <span class="literal">-</span><span class="literal">-</span><span class="comment">create</span><span class="literal">-</span><span class="comment">home</span> <span class="literal">-</span><span class="literal">-</span><span class="comment">home</span><span class="literal">-</span><span class="comment">dir</span> <span class="comment">/home/git/</span> <span class="comment">git</span></span><br><span class="line"><span class="comment">#因为git用户不需要登录,所以这里不需要设置git的密码。</span></span><br></pre></td></tr></table></figure></p>
<p>6.配置GitLab shell</p>
<p>#GitLab shell是专门为GitLab开发的提供ssh访问和版本管理的软件。<br><figure class="highlight vala"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br></pre></td><td class="code"><pre><span class="line"><span class="preprocessor">#先使用root登录,而后切换成git</span></span><br><span class="line">$ su - git</span><br><span class="line">cd /home/git</span><br><span class="line"></span><br><span class="line"><span class="preprocessor">#克隆gitlab shell</span></span><br><span class="line">$ git clone https:<span class="comment">//github.com/gitlabhq/gitlab-shell.git</span></span><br><span class="line">$ cd gitlab-shell</span><br><span class="line"></span><br><span class="line"><span class="preprocessor">#切换成1.8.0版本,并编辑配置</span></span><br><span class="line">$ git checkout v1<span class="number">.8</span><span class="number">.0</span></span><br><span class="line">$ cp config.yml.example config.yml</span><br><span class="line"><span class="preprocessor">#这里最重要的是将gitlab_url修改成gitlab的访问域名。形如:http://test.gitlab.com/</span></span><br><span class="line"></span><br><span class="line"><span class="preprocessor">#注:如果gitlab是使用https访问,则需将http替换成https,配置文件中的self_signed_cert要修改成true,</span></span><br><span class="line"><span class="preprocessor">#否则gitlab shell在通过api和gitlab进行通信的时候就会出现错误,导致项目push出错。</span></span><br><span class="line"><span class="preprocessor">#因为后面配置web服务器的时候是使用ssl,所以这里要按照ssl的方式配置。</span></span><br><span class="line"></span><br><span class="line"><span class="preprocessor"># 另外如果使用的域名是测试域名,不要忘记在系统的/etc/hosts做域名映射。</span></span><br><span class="line"></span><br><span class="line"><span class="preprocessor">#安装一些需要的目录和文件</span></span><br><span class="line">$ ./bin/install</span><br></pre></td></tr></table></figure></p>
<p>7.安装数据库</p>
<p>#安装mysql并设置开机启动:<br><figure class="highlight sql"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br></pre></td><td class="code"><pre><span class="line">$ su -</span><br><span class="line">$ yum <span class="operator"><span class="keyword">install</span> -y mysql-<span class="keyword">server</span> mysql-devel</span><br><span class="line">$ chkconfig mysqld <span class="keyword">on</span></span><br><span class="line">$ service mysqld <span class="keyword">start</span></span><br><span class="line"></span><br><span class="line">#设置mysql root账号的密码:</span><br><span class="line">$ /usr/<span class="keyword">bin</span>/mysql_secure_installation</span><br><span class="line">#创建新用户和数据库给gitlab使用</span><br><span class="line"></span><br><span class="line">$ mysql -u root -<span class="keyword">p</span></span><br><span class="line"># 输入root密码</span><br><span class="line"># 为gitlab创建使用用户</span><br><span class="line"><span class="keyword">CREATE</span> <span class="keyword">USER</span> <span class="string">'gitlab'</span>@<span class="string">'localhost'</span> <span class="keyword">IDENTIFIED</span> <span class="keyword">BY</span> <span class="string">'gitlab'</span>;</span></span><br><span class="line"><span class="operator"><span class="keyword">CREATE</span> <span class="keyword">DATABASE</span> <span class="keyword">IF</span> <span class="keyword">NOT</span> <span class="keyword">EXISTS</span> <span class="string">`gitlabhq_production`</span> <span class="keyword">DEFAULT</span> <span class="built_in">CHARACTER</span> <span class="keyword">SET</span> <span class="string">`utf8`</span> <span class="keyword">COLLATE</span> <span class="string">`utf8_unicode_ci`</span>;</span> # 创建gitlaba使用的数据库</span><br><span class="line"><span class="operator"><span class="keyword">GRANT</span> <span class="keyword">SELECT</span>, <span class="keyword">LOCK</span> <span class="keyword">TABLES</span>, <span class="keyword">INSERT</span>, <span class="keyword">UPDATE</span>, <span class="keyword">DELETE</span>, <span class="keyword">CREATE</span>, <span class="keyword">DROP</span>, <span class="keyword">INDEX</span>, <span class="keyword">ALTER</span> <span class="keyword">ON</span> <span class="string">`gitlabhq_production`</span>.* <span class="keyword">TO</span> <span class="string">'gitlab'</span>@<span class="string">'localhost'</span>;</span> # 给予gitlab用户权限</span><br></pre></td></tr></table></figure></p>
<p>8.安装gitlab</p>
<p>#将GitLab安装在git的家目录下:<br><figure class="highlight crystal"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br><span class="line">88</span><br><span class="line">89</span><br><span class="line">90</span><br><span class="line">91</span><br><span class="line">92</span><br><span class="line">93</span><br><span class="line">94</span><br><span class="line">95</span><br><span class="line">96</span><br><span class="line">97</span><br><span class="line">98</span><br><span class="line">99</span><br><span class="line">100</span><br><span class="line">101</span><br><span class="line">102</span><br><span class="line">103</span><br><span class="line">104</span><br><span class="line">105</span><br><span class="line">106</span><br><span class="line">107</span><br><span class="line">108</span><br><span class="line">109</span><br><span class="line">110</span><br><span class="line">111</span><br><span class="line">112</span><br><span class="line">113</span><br><span class="line">114</span><br><span class="line">115</span><br><span class="line">116</span><br><span class="line">117</span><br><span class="line">118</span><br><span class="line">119</span><br><span class="line">120</span><br><span class="line">121</span><br><span class="line">122</span><br><span class="line">123</span><br><span class="line">124</span><br></pre></td><td class="code"><pre><span class="line"><span class="variable">$ </span>su -</span><br><span class="line"><span class="variable">$ </span>su - git</span><br><span class="line"></span><br><span class="line"><span class="comment">#克隆GitLab并切换分支到6-3-stable</span></span><br><span class="line"></span><br><span class="line"><span class="variable">$ </span>git clone <span class="symbol">https:</span>/<span class="regexp">/github.com/gitlabhq</span><span class="regexp">/gitlabhq.git gitlab # 克隆GitLab</span><br><span class="line"># 进入gitlab目录</span><br><span class="line">$ cd /home</span><span class="regexp">/git/gitlab</span></span><br><span class="line"><span class="comment"># 切换到6-3-stable分支</span></span><br><span class="line"><span class="variable">$ </span>git checkout <span class="number">6</span>-<span class="number">3</span>-stable</span><br><span class="line"><span class="comment"># 配置项目</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 复制配置文件</span></span><br><span class="line"><span class="variable">$ </span>cp config/gitlab.yml.example config/gitlab.yml</span><br><span class="line"></span><br><span class="line"><span class="comment"># 修改配置文件中的访问域名</span></span><br><span class="line">(your_domain_name为项目的访问域名)</span><br><span class="line"><span class="variable">$ </span>sed -i <span class="string">'s|localhost|your_domain_name|g'</span> config/gitlab.yml</span><br><span class="line"></span><br><span class="line"><span class="comment"># 设定log和tmp目录所有者和权限</span></span><br><span class="line"><span class="variable">$ </span>chown -<span class="constant">R</span> git log/</span><br><span class="line"><span class="variable">$ </span>chown -<span class="constant">R</span> git tmp/</span><br><span class="line"><span class="variable">$ </span>chmod -<span class="constant">R</span> u+rwX log/</span><br><span class="line"><span class="variable">$ </span>chmod -<span class="constant">R</span> u+rwX tmp/</span><br><span class="line"></span><br><span class="line"><span class="comment"># 创建gitlab-satellites目录</span></span><br><span class="line"><span class="variable">$ </span>mkdir /home/git/gitlab-satellites</span><br><span class="line"></span><br><span class="line"><span class="comment"># 创建tmp/pids/和tmp/sockets/目录,确保gitlab有相应的权限</span></span><br><span class="line"><span class="variable">$ </span>mkdir tmp/pids/</span><br><span class="line"><span class="variable">$ </span>mkdir tmp/sockets/</span><br><span class="line"><span class="variable">$ </span>chmod -<span class="constant">R</span> u+rwX tmp/pids/</span><br><span class="line"><span class="variable">$ </span>chmod -<span class="constant">R</span> u+rwX tmp/sockets/</span><br><span class="line"></span><br><span class="line"><span class="comment"># 创建public/uploads目录</span></span><br><span class="line"><span class="variable">$ </span>mkdir public/uploads</span><br><span class="line"><span class="variable">$ </span>chmod -<span class="constant">R</span> u+rwX public/uploads</span><br><span class="line"></span><br><span class="line"><span class="comment"># 复制unicorn配置</span></span><br><span class="line"><span class="variable">$ </span>cp config/unicorn.rb.example config/unicorn.rb</span><br><span class="line"></span><br><span class="line"><span class="comment"># 编辑unicorn配置,可以采用默认设置</span></span><br><span class="line"><span class="variable">$ </span>vim config/unicorn.rb</span><br><span class="line"></span><br><span class="line"><span class="comment"># 配置git的用户和邮件</span></span><br><span class="line"><span class="variable">$ </span>git config --global user.name <span class="string">"GitLab"</span></span><br><span class="line"><span class="variable">$ </span>git config --global user.email <span class="string">"gitlab@your_domain_name"</span></span><br><span class="line"><span class="variable">$ </span>git config --global core.autocrlf input</span><br><span class="line"><span class="comment">#这边的配置比较复杂,小心为妙</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 配置数据库访问文件</span></span><br><span class="line"><span class="variable">$ </span>cp config/database.yml.mysql config/database.yml</span><br><span class="line"> 编辑config/database.yml,设置其中连接数据库的账号密码</span><br><span class="line"><span class="comment">#修改其中username和password就可以了,其中密码就是上面数据库步骤中创建gitlab用户的密码。</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#确保该文件只有git账号有权限读取</span></span><br><span class="line"><span class="variable">$ </span>chmod o-rwx config/database.yml</span><br><span class="line"> </span><br><span class="line">安装<span class="constant">Gems</span></span><br><span class="line"><span class="variable">$ </span><span class="constant">Gemfile</span> 里,第一个</span><br><span class="line">source <span class="string">'https://rubygems.org/'</span></span><br><span class="line"><span class="comment">#更换成</span></span><br><span class="line">source <span class="string">'https://ruby.taobao.org/'</span></span><br><span class="line"> <span class="variable">$ </span>gem install charlock_holmes --version <span class="string">'0.6.9.4'</span></span><br><span class="line"><span class="variable">$ </span>exit</span><br><span class="line"></span><br><span class="line">安装mysql包</span><br><span class="line"><span class="variable">$ </span>cd /home/git/gitlab/</span><br><span class="line"><span class="variable">$ </span>bundle install --deployment --without development test postgres puma aws</span><br><span class="line">报错 <span class="constant">Could</span> not find modernizr-<span class="number">2.6</span>.<span class="number">2</span> in any <span class="keyword">of</span> the sources</span><br><span class="line">解决办法:</span><br><span class="line">vi <span class="constant">Gemfile</span></span><br><span class="line">第<span class="number">114</span>行 gem <span class="string">"modernizr"</span>, <span class="string">"2.6.2"</span></span><br><span class="line">更改为:</span><br><span class="line">第<span class="number">114</span>行 gem <span class="string">"modernizr-rails"</span>, <span class="string">"2.7.1"</span></span><br><span class="line">[git<span class="variable">@Git</span> gitlab]<span class="variable">$ </span>vi <span class="constant">Gemfile</span>.lock</span><br><span class="line">第<span class="number">252</span>行 modernizr (<span class="number">2.6</span>.<span class="number">2</span>)</span><br><span class="line">更改为:</span><br><span class="line">第<span class="number">252</span>行 modernizr-rails (<span class="number">2.7</span>.<span class="number">1</span>)</span><br><span class="line">第<span class="number">523</span>行 modernizr (= <span class="number">2.6</span>.<span class="number">2</span>)</span><br><span class="line">更改为:</span><br><span class="line">第<span class="number">523</span>行 modernizr-rails (= <span class="number">2.7</span>.<span class="number">1</span>)</span><br><span class="line"></span><br><span class="line"><span class="comment">#初始化数据和激活高级功能</span></span><br><span class="line"><span class="variable">$ </span>cd /home/git/gitlab</span><br><span class="line"><span class="variable">$ </span>bundle exec rake <span class="symbol">gitlab:</span>setup <span class="constant">RAILS_ENV</span>=production</span><br><span class="line"></span><br><span class="line"><span class="comment">#这步完成后,会生一个默认的管理员账号:</span></span><br><span class="line">admin<span class="variable">@local</span>.host</span><br><span class="line"><span class="number">5</span>iveL!fe</span><br><span class="line"></span><br><span class="line"> </span><br><span class="line"><span class="comment">#安装启动脚本</span></span><br><span class="line"><span class="variable">$ </span>su -</span><br><span class="line"><span class="variable">$ </span>wget -<span class="constant">O</span> /etc/init.d/gitlab <span class="symbol">https:</span>/<span class="regexp">/raw.github.com/gitlabhq</span><span class="regexp">/gitlab-recipes/master</span><span class="regexp">/init/sysvinit</span><span class="regexp">/centos/gitlab</span>-unicorn</span><br><span class="line"><span class="variable">$ </span>chmod +x /etc/init.d/gitlab</span><br><span class="line"><span class="variable">$ </span>chkconfig --add gitlab</span><br><span class="line">开机时启动</span><br><span class="line"></span><br><span class="line"><span class="variable">$ </span>chkconfig gitlab on</span><br><span class="line"></span><br><span class="line"> <span class="comment">#检测应用程序状态</span></span><br><span class="line"><span class="variable">$ </span>su - git</span><br><span class="line"><span class="variable">$ </span>cd gitlab/</span><br><span class="line"><span class="variable">$ </span>bundle exec rake <span class="symbol">gitlab:</span><span class="symbol">env:</span>info <span class="constant">RAILS_ENV</span>=production</span><br><span class="line"><span class="variable">$ </span>exit</span><br><span class="line">可以查看到系统、<span class="constant">Ruby</span>、<span class="constant">GitLab</span>和<span class="constant">GitLab</span> <span class="constant">Shell</span>的版本和其他信息。</span><br><span class="line"></span><br><span class="line">启动<span class="constant">GitLab</span>实例</span><br><span class="line"><span class="variable">$ </span>service gitlab start</span><br><span class="line"></span><br><span class="line"><span class="comment">#查看应用更加详细的信息</span></span><br><span class="line"><span class="variable">$ </span>su - git</span><br><span class="line"><span class="variable">$ </span>cd gitlab/</span><br><span class="line"><span class="variable">$ </span>bundle exec rake <span class="symbol">gitlab:</span>check <span class="constant">RAILS_ENV</span>=production</span><br><span class="line"><span class="comment">#这里会提示一个Init script up-to-date的错误,如下:</span></span><br><span class="line"></span><br><span class="line"><span class="constant">Init</span> script up-to-date? ... no</span><br><span class="line"><span class="constant">Try</span> fixing <span class="symbol">it:</span></span><br><span class="line"><span class="constant">Redownload</span> the init script</span><br><span class="line"><span class="constant">For</span> more information <span class="symbol">see:</span></span><br><span class="line">doc/install/installation.md in section <span class="string">"Install Init Script"</span></span><br><span class="line"><span class="constant">Please</span> fix the error above and rerun the checks.</span><br><span class="line"><span class="comment">#官方文档说明不用介意这个问题。</span></span><br></pre></td></tr></table></figure></p>
<p>9.安装web服务器</p>
<p>#选择的是nginx,关于apache方面的请参考原文档<br><figure class="highlight crystal"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br></pre></td><td class="code"><pre><span class="line"><span class="variable">$ </span>rpm -ivh <span class="symbol">http:</span>/<span class="regexp">/nginx.org/packages</span><span class="regexp">/centos/</span><span class="number">6</span>/noarch/<span class="constant">RPMS</span>/nginx-release-centos-<span class="number">6</span>-<span class="number">0</span>.el6.ngx.noarch.rpm</span><br><span class="line"><span class="variable">$ </span>yum -y install nginx</span><br><span class="line"><span class="variable">$ </span>chkconfig nginx on</span><br><span class="line"><span class="variable">$ </span>mkdir /etc/nginx/sites-available</span><br><span class="line"><span class="variable">$ </span>mkdir /etc/nginx/sites-enabled</span><br><span class="line"><span class="variable">$ </span>wget -<span class="constant">O</span> /etc/nginx/sites-available/gitlab <span class="symbol">https:</span>/<span class="regexp">/raw.github.com/gitlabhq</span><span class="regexp">/gitlab-recipes/master</span><span class="regexp">/web-server/nginx</span><span class="regexp">/gitlab-ssl #(可能会出现连接不上,在网上搜索gitlab的nginx配置即可)</span><br><span class="line">$ ln -sf /etc</span><span class="regexp">/nginx/sites</span>-available/gitlab /etc/nginx/sites-enabled/gitlab</span><br><span class="line">vim /etc/nginx/nginx.conf,将 <span class="keyword">include</span> /etc/nginx/conf.d/*.conf; 替换成 <span class="keyword">include</span> /etc/nginx/sites-enabled/*;</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment">#编辑/etc/nginx/sites-available/gitlab,将配置中server_name替换成实际访问的域名。</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#将nginx加入git用户组</span></span><br><span class="line"><span class="variable">$ </span>usermod -a -<span class="constant">G</span> git nginx</span><br><span class="line"><span class="variable">$ </span>chmod g+rx /home/git/</span><br><span class="line"></span><br><span class="line"><span class="comment">#添加ssl证书或者自己生成一个</span></span><br><span class="line"><span class="variable">$ </span>cd /etc/nginx</span><br><span class="line"><span class="variable">$ </span>openssl req -new -x509 -nodes -days <span class="number">3560</span> -<span class="keyword">out</span> gitlab.crt -keyout gitlab.key</span><br><span class="line"></span><br><span class="line"><span class="comment">#启动nginx</span></span><br><span class="line"><span class="variable">$ </span>service nginx start</span><br></pre></td></tr></table></figure></p>
<p>10.安装总结</p>
<p>(1). gitlab安装对软件和配置要求很高,必须保证每一步正确,否则无法进入gitlab系统</p>
<p>(2).访问ip地址,可能会出现 网关502错误</p>
<pre><code>chown -R git:git /etc/nginx
#刷新浏览器 应该可以看到了
</code></pre><p>(3).如果出现错误,查看nginx的log日志,查看gitlab的日志</p>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/gitlab/">gitlab</a></li></ul>
</div>
<div class="clearfix"></div>
</div>
</div>
</article>
</div>
<footer id="footer">
<div class="outer">
<div id="footer-info">
<div class="footer-left">
© 2016 John Doe
</div>
<div class="footer-right">
<a href="http://hexo.io/" target="_blank">Hexo</a> Theme <a href="https://github.com/litten/hexo-theme-yilia" target="_blank">Yilia</a> by Litten
</div>
</div>
</div>
</footer>
</div>
<link rel="stylesheet" href="/fancybox/jquery.fancybox.css" type="text/css">
<script>
var yiliaConfig = {
fancybox: true,
mathjax: true,
animate: true,
isHome: true,
isPost: false,
isArchive: false,
isTag: false,
isCategory: false,
open_in_new: false
}
</script>
<script src="http://7.url.cn/edu/jslib/comb/require-2.1.6,jquery-1.9.1.min.js" type="text/javascript"></script>
<script src="/js/main.js" type="text/javascript"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [ ['$','$'], ["\\(","\\)"] ],
processEscapes: true,
skipTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code']
}
});
MathJax.Hub.Queue(function() {
var all = MathJax.Hub.getAllJax(), i;
for(i=0; i < all.length; i += 1) {
all[i].SourceElement().parentNode.className += ' has-jax';
}
});
</script>
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
</div>
</body>
</html>