##文章来自于:carey.akhack.comGitlab介绍GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或
##文章来自于:carey.akhack.com
Gitlab介绍
GitLab
是一个利用 Ruby on Rails
开发的开源应用程序,实现一个自托管的Git
项目仓库,可通过Web界面进行访问公开的或者私人项目。GitLab
拥有与Github
类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。
安装gitlab-ce
基础环境
$ cat /etc/redhat-releaseCentOS Linux release 7.3.1611 (Core)$ uname -r3.10.0-514.el7.x86_64
更换阿里yum源
参考地址
$ mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup$ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
基础环境配置
关闭防火墙
$ systemctl stop firewalld.service
关闭SELinux
$ sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config$ setenforce 0
安装相关依赖
$ yum -y install curl policycoreutils policycoreutils-python openssh-server openssh-clients postfix git
启动postfix
$ systemctl start postfix
安装gitlab-ce
$ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash$ yum install -y gitlab-ce# 配置gitlab$ gitlab-ctl reconfigure# gitlab 服务管理命令$ gitlab-ctl start$ gitlab-ctl stop$ gitlab-ctl restart$ gitlab-ctl status
配置gitlab
使用IP或域名访问项目
$ grep "^external_url" /etc/gitlab/gitlab.rbexternal_url 'http://192.168.56.101'# 修改后需要重新配置$ gitlab-ctl reconfigure
关闭注册
因为我们内部使用不需要用户自己注册,由运维分配用户即可
点击右上角
Admin area
点击设置按钮
->
settings
找到
sign-up
去掉勾即可
注意保持在最下边噢,千万别忘了。然后退出用户你就会发现没有注册页面了。
创建项目
提示: gitlab
上面有一个项目跟组的概念,我们要创建一个组,才可以在创建一个项目。因为gitlab
的路径上首先是ip
地址,其次是组
点击右上角
Admin area
创建组
下一步
注意下边的create group
保存噢
创建项目点击左上角,展开按钮点击
project
->
new project
添加
README
点击README
,写入项目信息,提交。免秘钥认证
使用ssh-keygen
生成秘钥
$ ssh-keygen -t rsaGenerating public/private rsa key pair.Enter file in which to save the key (/home/carey/.ssh/id_rsa):Created directory '/home/carey/.ssh'.Enter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in /home/carey/.ssh/id_rsa.Your public key has been saved in /home/carey/.ssh/id_rsa.pub.The key fingerprint is:ac:32:bd:3c:77:98:0b:29:f9:75:a9:9b:fa:f1:8b:25 [email protected] key's randomart image is:+--[ RSA 2048]----+| || || || . || S || o o . || = = Eo+ || *.++X. || ==B+o. |+-----------------+
- 复制
id_rsa.pub
到gitlab
$ cat ~/.ssh/id_rsa.pubssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDnjxAg7yZlm7wct8A1nQI9x30RLRclV0Q8J9ZfXPX5JAvwfn7YfHd8fNOVpHGWg0H8iWgh0VykuYa8nne2qlbJgQ8ny5QotYvP6VYoput22oryFCSyLKITA8QaJEFSU6xy0qORXf+o8GjdLVjyJRHX/f6kc6rzxbXXecVLj8V4xNX+WV1RfN5LWykP3tFvysV5Z4quoQNCe51wsmXvuxxJ2t96eDJw9T0wyoGQ1bYPzkq7t9KKqQxzRodEKmg7PN9VRggsBL6Bl/gwnIJrM28BHSHtevknc1SOQ8UtqJyN3u1Vtv2DV/bPeNCD1GnMMcMepMy5wTjOY2t+NjS9hO2R [email protected]
点击右上角 设置 按钮 ->
SSH Keys
,复制id_rsa.pub
到gitlab
。提示: 内部访问所有访问
project
的主机都需要添加keys
Git参考资料