Gitlab在Ubuntu-12.04.2上面的安装配置教程

简介:

公司之前用的是SVN进行项目管理,由于SVN的代码库是集中管理的,不支持离线更新,后来把SVN迁移到git上面,git采用的是分布式的体系机构,用户完全可以脱离git服务器而在本地查看,编写和提交代码。后来由于git没有web页面,所有的操作都是在后台操作,相比之下,gitlab更是一款高端洋气上档次的git项目管理软件,用户可以通过WEB页面添加,删除项目|用户|SSHKEY等等,而且可以通过浏览器查看,修改源代码。
Gitlab简介:Gitlab是一个用Ruby on Rails开发的开源项目管理程序,可以通过WEB界面进行访问公开的或者私人项目。它和Github有类似的功能,能够浏览源代码,管理缺陷和注释。gitlab官方文档支持Debian/Ubuntu系统,我的gitlab服务器是ubuntu-12.04.2,具体的安装请查看gitlab官方安装文档

1)在mysql上面创建gitlabhq_production数据库并授权。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#创建gitlabhq_production数据库并授权
CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE
`utf8_unicode_ci`;
GRANT SELECT, LOCK TABLES, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON
`gitlabhq_production`.* TO  'gitlab' @ '192.168.1.230'  identified by  'gitlab!@#' ;
#修改gitlab数据库配置文件
cd  gitlab
sudo  -u git  cp  config /database .yml.mysql config /database .yml
sudo  cat  config /database .yml
production:
   adapter: mysql2
   encoding: utf8
   reconnect:  false
   database: gitlabhq_production
   pool: 10
   username: gitlab
   password:  "gitlab!@#"
   host: 192.168.1.243
#初始化gitlab数据库
sudo  -u git -H  chmod  o-rwx config /database .yml
sudo  -u git -H bundle  exec  rake gitlab:setup RAILS_ENV=production

2)gitlab默认安装后的用户名:admin@local.host,密码:5iveL!fe,用户第一次登陆后需要修改密码。

3)gitlab邮件提醒配置,创建账号,添加SSH KEY的时候都会有邮件提醒给用户。

修改全局配置文件git/.gitconfig文件,这里的email是gitlab发送邮件的Email地址。

144027515.jpg

配置gitlab的发送邮件的SMTP服务,gitlab/config/environments/production.rb。

144651891.jpg

当管理员给用户创建账号时,用户邮箱里面会自动收到gitlab发送的邮件。

145737212.jpg

4)gitlab URL配置。

1
2
3
4
5
6
7
#复制gitlab的配置文件
sudo  cp  gitlab /lib/support/nginx/gitlab  /etc/nginx/sites-available/gitlab
sudo  ln  -s  /etc/nginx/sites-available/gitlab  /etc/nginx/sites-enabled/gitlab
#编辑配置文件/etc/nginx/sites-enabled/gitlab
server {
   listen *:80 default_server;
   server_name 主机名;

5)修改git repositories存储路径,默认保存在/home/git/repositories路径下面。

1
2
3
4
cat  gitlab-shell /config .yml
# Repositories path
# REPOS_PATH MUST NOT BE A SYMLINK!!!
repos_path:  "/data/gitlab/repositories"

6)用户登录成功后,在Profile里面设置账号,修改密码,设置邮件提醒(Notifications),添加SSH Kyes,设置用户浏览时的效果(Design)等。

155432677.jpg

7)创建git项目,相当于git里面的git init --bare命令。项目类型为Public,即任何人都可以查看。

160440580.jpg

8)项目创建完毕后,可以通过下面的方法设置,创建和提交代码到项目库。

160832211.jpg

9)通过soucetree把git里面的代码push到gitlab里面,首先在sourcetree Settings添加gitlab remote origin地址。

161716906.jpg

10)通过Sourcetree把项目push到远端的gitlab remote origin 。

162405809.jpg

11)gitlabWEB页面测试,由于sfzhang.git是public,用户不用登陆就可以浏览。

162741746.jpg

总结:

1)gitlab搭建完毕后,用git clone 的时候出现下面错误(This error occurs when sending data over HTTP which is larger than Git’s post buffer (by default 1 MB),在nginx配置文件http下面添加client_max_body_size 500m;即可。

1
2
3
POST git-receive-pack (chunked)
error: RPC failed; result=22, HTTP code = 411
fatal: The remote end hung up unexpectedly









本文转自 sfzhang 51CTO博客,原文链接:http://blog.51cto.com/sfzhang88/1323201,如需转载请自行联系原作者

目录
相关文章
|
21天前
|
XML Ubuntu Linux
部署08---扩展-Win10配置WSL(Ubuntu)环境,WSL系统是什么意思,是Windows系统上的一个子系统, xml的一大特点是直链系统,直接链接你的CPU,硬盘和内存,如何用 WSL部署
部署08---扩展-Win10配置WSL(Ubuntu)环境,WSL系统是什么意思,是Windows系统上的一个子系统, xml的一大特点是直链系统,直接链接你的CPU,硬盘和内存,如何用 WSL部署
|
2月前
|
存储 Ubuntu 关系型数据库
Ubuntu 20.04 卸载与安装 MySQL 5.7 详细教程
该文档提供了在Ubuntu上卸载和安装MySQL 5.7的步骤。首先,通过`apt`命令卸载所有MySQL相关软件包及配置。然后,下载特定版本(5.7.32)的MySQL安装包,解压并安装所需依赖。接着,按照特定顺序安装解压后的deb包,并在安装过程中设置root用户的密码。安装完成后,启动MySQL服务,连接数据库并验证。最后,提到了开启GTID和二进制日志的配置方法。
|
10天前
|
Ubuntu Java Linux
玩转Ubuntu零基础教程,让你成为Ubuntu高手。
本教程将介绍Ubuntu操作系统的各个方面。它探讨了Ubuntu桌面版的各种功能,风格和工作。比较我们通常会在Windows操作系统上找到的软件。有一些专注于Ubuntu服务器版本的章节。本教程还包括有兴趣了解Ubuntu的虚拟机和云端的人员的独立章节。
22 1
玩转Ubuntu零基础教程,让你成为Ubuntu高手。
|
4天前
|
Ubuntu 网络协议
Ubuntu20.04配置静态ip
配置Ubuntu 20.04使用静态IP地址是一个简单直接的过程,特别是借助于Netplan工具。遵循上述步骤,您可以轻松完成静态IP配置,为您的设备提供一个稳定和不变的网络地址。
21 2
|
14天前
|
Ubuntu Linux Shell
Ubuntu/linux系统环境变量配置详解
理解和掌握如何配置环境变量对于使用和管理Ubuntu/Linux系统非常重要。
30 2
|
5天前
|
Ubuntu 网络协议
Ubuntu20.04配置静态ip
配置Ubuntu 20.04使用静态IP地址是一个简单直接的过程,特别是借助于Netplan工具。遵循上述步骤,您可以轻松完成静态IP配置,为您的设备提供一个稳定和不变的网络地址。
8 0
|
1月前
|
缓存 Ubuntu 应用服务中间件
Ubuntu 22.04 上安装、配置和使用 Nginx 可以分为几个简单的步骤
Ubuntu 22.04 上安装、配置和使用 Nginx 可以分为几个简单的步骤
|
24天前
|
Ubuntu 网络协议
【ubuntu】DNS设置工具resolvectl安装教程
请注意,这些步骤可能会根据你的Ubuntu版本和配置有所不同。如果你在安装过程中遇到问题,可能需要查阅更具体的文档或者寻求专业的技术支持。
26 0
|
1月前
|
Ubuntu
蓝易云 - 虚拟机中Ubuntu16.04设置网络教程
以上就是在虚拟机中设置Ubuntu 16.04网络的基本步骤。具体的步骤可能会根据你的虚拟机软件和网络环境有所不同。
43 8
|
1月前
|
Ubuntu Linux
ubuntu linux配置bond 网卡绑定 多个bond配置多网关
ubuntu linux配置bond 网卡绑定 多个bond配置多网关
34 1