赞
踩
GitLab 是一个用于仓库管理系统的开源项目。类似于GitHub和GItee。
GitHub不是第一选择的原因:一是因为在国内的客户在进行拉取跟推送时,由于一些众所周知的原因,可能会导致访问不到;二是仓库都需要进行public,如果创建私有仓库需要收费。
Gitee也是一个仓库管理系统,但是在Gitee上只有5GB的免费空间。
Gitlab很好的解决了这两个问题。Gitlab有两个版本,Gitlab-ce 和Gitlab-ee。Gitlab-ce是免费的,功能可适合于小公司使用;Gitlab-ee是企业版的,功能更加强大。
gitlab 安装完成会默认使用一下端口 80、8060、8080、9090、9100、9121、9168、9187。 为了简便的看到安装成功的最终效果, 最好可以确保以上端口没有被使用。如果是云服务器上,尽量打开安全组中所有端口,以及内部防火墙上的所有端口。
因为我用的云主机,所以只在安全组中打开了所有端口,并没有对机器本身的防火墙进行配置,直接关闭了。
防火墙设置示例:
- # 将http和https加入防火墙策略,并重启防火墙。
- systemctl start firewalld
- #查看所有开放端口
- firewall-cmd --zone=public --list-ports
- firewall-cmd --permanent --add-service=http
- firewall-cmd --permanent --add-service=https
- #在防火墙中开放80端口
- firewall-cmd --zone=public --add-port=80/tcp --permanent (permanent永久生效,没有此参数重启后失效)
- systemctl reload firewalld
- systemctl enable firewalld
-
安装依赖
开启sshd并设置为开机自启
修改postfix的配置文件后启动并设置为开机自启动
命令集合:
- [root@git ~]# yum -y install curl policycoreutils policycoreutils-python openssh-server openssh-clients postfix
-
-
-
- [root@git ~]# systemctl enable sshd && systemctl start sshd
-
-
- [root@git ~]# vim /etc/postfix/main.cf
- 将inet_interfaces = localhost改为inet_interfaces = all
- [root@git ~]# systemctl enable postfix && systemctl start postfix
-
配置gitlab-ce的yum repo
修改国外源为清华源,可以让下载速度更快
清除缓存,并下载GItlab-ce
命令合集:
- curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
-
-
- vim /etc/yum.repos.d/gitlab_gitlab-ce.repo
- 修改为
- baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
-
- yum makecache && yum install gitlab-ce -y
出现如下图标,就表示安装成功
打开/etc/gitlab/gitlab.rb ,修改external_url 'http://gitlab.example.com'为自己的ip地址加端口号。
gitlab-ctl reconfigure #执行此命令重新加载配置且同时启动gitlab所有服务
启动gitlab (gitlab-ctl start)
此时就可访问
参考文档:Gitlab如何设置默认的访问密码
切换到命令运行的目录 cd /opt/gitlab/bin/
执行如下命令:gitlab-rails console -e production 进行初始化密码
在irb(main):001:0> 后面通过 u=User.where(id:1).first 来查找与切换账号(User.all 可以查看所有用户)
通过u.password='12345678'设置密码为12345678:
通过u.password_confirmation='12345678' 再次确认密码
通过 u.save!进行保存(切记切记 后面的 !)
出现true说明设置成功!
此时就可以用root/12345678来登录页面啦!
登录成功!
其他邮箱设置示例以官网为准:官网其他邮箱的SMTP的设置
参考文档:Gitlab设置邮件接受
gitlab新增新用户有两种方式,第一种可以用户主动注册(自己设置密码);第二种也可以通过root管理员用户直接添加用户,发个邮件到用户的邮箱里,收到邮件后激活。
如果是第二种方式添加新用户的话,就需要配置gitlab邮箱了。
由于准备环节已经安装并启动了postfix,此处不再赘述。只需要确认postfix在运行即可。如果没有运行,使用systemctl start postfix启动即可。
打开gitlab的配置文件(/etc/gitlab/gitlab.rb)
添加如下内容:(可添加也可修改,因为文件中有以下选项,只是被注释掉)
- gitlab_rails['smtp_enable'] = true
- gitlab_rails['smtp_address'] = "smtp.qq.com"
- gitlab_rails['smtp_port'] = 465
- gitlab_rails['smtp_user_name'] = "3089308419@qq.com"
- gitlab_rails['smtp_password'] = "qknnhadexxxxxxxx"
- gitlab_rails['smtp_domain'] = "smtp.qq.com"
- gitlab_rails['smtp_authentication'] = "login"
- gitlab_rails['smtp_enable_starttls_auto'] = true
- gitlab_rails['smtp_tls'] = true
- gitlab_rails['gitlab_email_from'] = '3089308419@qq.com'
- gitlab_rails['gitlab_email_reply_to'] = '3089308419@qq.com'
此处的 smtp_password不是账户的密码,而是授权码。
授权码获取方式:
打开QQ邮箱-设置-账户-帐户安全-开启服务-POP3/SMTP服务-生成授权码-发个短信
成功生成授权码。
配置完成后执行gitlab-ctl reconfigure 让配置生效
验证或测试邮箱:
执行 gitlab-rails console进入控制台交互界面, 然后在控制台提示符后输入下面内容发送一封测试邮件 。
成功!此时创建一个新的用户即会发送邮件给新用户的邮箱。
创建一个新用户:用户名为"技术人员1"
目标达成!
使用方法类似于Github和Gitee
新建仓库:
新建成功!
建好的仓库如下所示,之后使用方法不再赘述:
还提供一个脚本安装方式:一键安装与配置gitlab(脚本)_Romanticn_chu的博客-CSDN博客
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。