1) 安装并配置必要的依赖项
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates
接下来,安装Postfix以发送通知电子邮件。如果要使用其他解决方案发送电子邮件,请跳过此步骤并在安装GitLab后配置外部SMTP服务器。
sudo apt-get install -y postfix
在Postfix安装期间,可能会出现配置屏幕。选择“Internet Site”并按Enter键。使用服务器的外部DNS作为“邮件名称”,然后按Enter键。如果出现其他屏幕,请继续按Enter键接受默认值。
2.)下载安装gitlab-ee, 从清华开源软件网站中查找.
#下载
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ee/ubuntu/pool/xenial/main/g/gitlab-ee/gitlab-ee_12.6.4-ee.0_amd64.deb
#安装
dpkg -i gitlab-ee_12.6.4-ee.0_amd64.deb
3.)修改配置文件:/etc/gitlab/gitlab.rb
// sudo vim /etc/gitlab/gitlab.rbexternal_url 'http://192.168.3.12:8080' // 这里是写你本机IP加端口号gitlab_rails['smtp_enable'] = truegitlab_rails['smtp_address'] = "smtp.qq.com"gitlab_rails['smtp_port'] = 465gitlab_rails['smtp_user_name'] = "12345678@qq.com"gitlab_rails['smtp_password'] = "这里写开启 QQ 邮箱 smtp 服务后生成的校验码"gitlab_rails['smtp_domain'] = "smtp.qq.com"gitlab_rails['smtp_authentication'] = "login"gitlab_rails['smtp_enable_starttls_auto'] = truegitlab_rails['smtp_tls'] = truegitlab_rails['gitlab_email_from'] = '12345678@qq.com'
如果修改了配置文件sudo vi /etc/gitlab/gitlab.rb
,需要重新配置Gitlab以使更改生效
sudo gitlab-ctl reconfigure
重新启动服务
sudo gitlab-ctl restart
有时候启动后,需要等个十几秒钟,站点才能有反正
4)开启服务
service sshd start
service postfix start
5)查看运行状态:
sudo gitlab-ctl status
如果run正常,则成功
6. ) 重启后,访问web
默认账户 root, 登陆地址为 服务器ip端口号地址 例如 192.168.30.213:8080
发现登不上去.
网上说有可能端口号被占用,我尝试将端口号改为8888.也不对,最后运行
service gitlab-runsvdir start
成功打开.
7.) 解决gitlab高内存占用率问题.
今天使用docker安装了gitlab,安装完成之后一看内存爆表,就是文章图片那个样子的
顿时感觉世界凉凉,为什么会有这么多gitlab的进程,内存也占用了这么多
百度了一下原来是我的服务器cpu核心数太多了,gitlab建议如果您这台机器只使用与gitlab的话unicorn['worker_processes'] 这个默认是cpu核心数加一,所以开启的进程就会很多,我们只要把这个参数指定一下就好了,编辑配置文件
vim gitlab.rb
去掉下面的注释
unicorn['worker_processes'] = 2
之后执行
docker exec -it gitlab gitlab-ctl reconfigure
docker exec -it gitlab gitlab-ctl restart
8.)gitlab 常用指令
因为每次开机发现cpu都会有占满的情况,所以如果不用gitlab应该关闭.
gitlab-ctl start # 启动所有 gitlab 组件;
gitlab-ctl stop # 停止所有 gitlab 组件;
gitlab-ctl restart # 重启所有 gitlab 组件;
gitlab-ctl status # 查看服务状态;
gitlab-ctl reconfigure # 启动服务;
vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
gitlab-rake gitlab:check SANITIZE=true --trace # 检查gitlab;
gitlab-ctl tail # 查看日志;
git version #查看版本;
git add xxx #新建;
git status #查看状态;
git commit -m "xxx" #提交
git push -u origin master #推送
git branch xxx #创建分支
git checkout xxx #分支切换
git checkout -b xxx #实现创建+切换
git branch #查看当前活动分支(*代表当前活动的分支)
git push origin --delete xxx #删除分支
git branch -v #查看远程分支
git merge xxx(分支)--no-ff
使用no-ff选项进行合并可以将comment一起转移,能够清晰的看出从哪儿来,做了哪些改变。
merge之前的log. ff是fast forward的缩写,ff方式在合并时不会生成一个新的合并节点,而no-ff则会生成。所以一般来说使用no-ff在管理起来更加方便。