首先安装必须的一些依赖

sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates

安装Postfix发送通知邮件

sudo apt-get install -y postfix

运行命令后,会出现一样邮件配置项,选择Interent site这项,然后一路回车键(使用左右键和回车键选择确定、取消,弹出列表选项的时候,选择 Internet Site)

官方源安装gitlab

官方源网站安装gitlab(如果官网无法安装,请参照下边步骤,利用国内安装源进行安装)

sudo curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install gitlab-ce

国内源安装gitlab

信任 GitLab 的 GPG 公钥(配置git的公钥,如果不信任公钥,无法配置清华大学的镜像路径,切记):

curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null

配置镜像路径(由于git官网是国外的服务器,所以配置清华大学的镜像路径)

切换到root用户,打开下面文件;将下边的信息添加到文档中(详见Gitlab Community Edition 镜像使用帮助

vi /etc/apt/sources.list.d/gitlab-ce.list  --打开文件
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu xenial main  --添加国内安装源

gitlab安装包下载地址:https://packages.gitlab.com/gitlab/gitlab-ce

国内源安装 gitlab-ce

sudo apt-get update  --更新
sudo apt-get install gitlab-ce  --安装

执行配置

sudo gitlab-ctl reconfigure

注1:

在执行配置的时候sudo gitlab-ctl reconfigure的时候往往会出现:ruby_block[supervise_redis_sleep] action run,出现会一直卡无法往下进行!

解决方案:

1、按住CTRL+C强制结束;

2、运行:sudo systemctl restart gitlab-runsvdir

3、再次执行:sudo gitlab-ctl reconfigure

注2:(自己遇到的坑,在网上查的资料得知,)

  1. 在ruby_block动作运行一步会出现超时

运行处理程序:运行gitlab-ctl reconfigure时出错:ruby_block [使用GitLab授权Grafana](监视:: grafana第95行)发生错误:Mixlib :: ShellOut :: CommandTimeout:命令在600秒后超时:命令超出允许执行时间,进程终止
----开始输出/ opt / gitlab / bin / gitlab-railsRunner -e production'app = Doorkeeper :: Application.where(redirect_uri:“ http://xx.xx.xx.xx/ -/ grafana / login / gitlab”,名称:“ GitLab Grafana”)。first_or_create;放入app.uid.concat(“”).concat(app.secret);' ---- STDOUT:
STDERR:
---- / opt / gitlab / bin / gitlab-railsRunner的最终输出-e production'app = Doorkeeper :: Application.where(redirect_uri:“ http://xx.xx。 xx.xx /-/ grafana / login / gitlab”,名称:“ GitLab Grafana”)。first_or_create;放入app.uid.concat(“”).concat(app。
----运行/ opt / gitlab / bin / gitlab-railsRunner
-e production'app = Doorkeeper :: Application.where(redirect_uri:“ http://xx.xx.xx.xx/-/grafana/login/ gitlab”,名称:“ GitLab Grafana”)。first_or_create;放入app.uid.concat(“”).concat(app.secret);'

2.sudo gitlab-rake gitlab:env:info正常返回虽然有时上面一步出现超时,测试发现已经可以通过浏览器访问Gitlab服务器,并且可以进入到注册页面,但提交注册时出现返回超时而用户可以成功注册的情况。配置信息,页面返回虽然超时但操作可以正常完成,这也是我判断可能是服务运行过缓慢导致超时的原因。

3.在登录时反复超时,无法正常使用。将服务器内存配置替换为2GB后解决超时问题

注3:如果遇到这种报错信息的话,应该是git用户权限的问题。git用户需要对包含.ssh目录的文件夹(包含父文件夹)执行权限。

Running handlers:
There was an error running gitlab-ctl reconfigure: service[grafana] (dynamically defined) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [], but received ''
---- Begin output of /opt/gitlab/embedded/bin/chpst -u root:root /opt/gitlab/embedded/bin/sv restart /opt/gitlab/service/grafana ----
STDOUT: timeout: run: /opt/gitlab/service/grafana: (pid ) 33s, got TERM
STDERR:
---- End output of /opt/gitlab/embedded/bin/chpst -u root:root /opt/gitlab/embedded/bin/sv restart /opt/gitlab/service/grafana ----
Ran /opt/gitlab/embedded/bin/chpst -u root:root /opt/gitlab/embedded/bin/sv restart /opt/gitlab/service/grafana returned

即使/var/opt/gitlab/.ssh的所有者和用户组都是git,由于父权限,它也不能到这级目录执行shell命令。即,给 /var/opt/gitlab/目录执行权限

chmod +x /var/opt/gitlab/
chmod +x /var/opt/
chmod +x /var/

如果执行不成功,就用sudo命令执行

启动gitlab

sudo gitlab-ctl start

浏览器进行访问

http://电脑的IP地址

  第一次进入,需要输入管理员账号的密码,以方便后期的管理。
输入好之后,就可以以管理员进行登录,账号是root,密码就是你刚才输入的密码。
至此,gitlab已安装成功,之后的使用方式,和github没有太大差异,就不进行介绍了

扩展

修改gitlab的端口和地址

编辑gitlab.rb

sudo gedit /etc/gitlab/gitlab.rb

将如下数据进行更改

external_url 'http://gitlab.example.com'

比如说更改为

external_url 'http://192.168.39.100:7800'

其中,192.168.39.100是安装了gitlab的这台电脑的IP,端口只要不冲突就行

更改之后,需要执行如下代码

sudo gitlab-ctl reconfigure

最后,在浏览器中访问gitlab,发现已修改成功,需要使用192.168.39.100:7800来访问

其他

gtilab部分命令

开启
sudo gitlab-ctl start
停止
sudo gitlab-ctl stop
重启
sudo gitlab-ctl restart
查看状态
sudo gitlab-ctl status
确认配置(修改配置后,必须执行)
sudo gitlab-ctl reconfigure
查看日志
sudo gitlab-ctl tail
查看 GitLab 版本号
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

卸载gitlab

sudo gitlab-ctl uninstall

sudo dpkg -r gitlab-ce

sudo rpm -e gitlab-ce

reboot(重启)

Ubuntu18.04 GitLab仓库服务器搭建的更多相关文章

  1. gitlab仓库服务器搭建

    ``` curl -sS http://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh | sudo bash sudo yum install ...

  2. 虚拟机安装ubuntu18.04及其srs服务器的搭建

    第一次写博客,有些地方可能不太完善. 1.安装VMware,我用的是VMware12. 2.下载Ubuntu镜像(自Ubuntu 17.10开始桌面版本不再提供32位安装镜像,Ubuntu Serve ...

  3. Ubuntu18.04下LAMP环境搭建

    可以安装安装Xampp,Xampp是一个集成的LAMP开发环境. 但是这只是对于一个刚安装好的系统来说的,但是很有可能我的电脑上面已经安装过Apache,或者安装过MySQL,或者安装过PHP了,或者 ...

  4. Ubuntu 16.04下Samba服务器搭建和配置(配截图)

    一.相关介绍 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和 ...

  5. Ubuntu-18.04 下使用Nginx搭建高可用,高并发的asp.net core集群

    一.实现前的准备 以下是实现简单负载均衡的思路,图中的服务器均为虚拟机 三台Linux服务器,一台用作Nginx负载均衡(192.168.254.139),另外两台用作Asp.Net Core应用程序 ...

  6. ubuntu18.04连接pptpd服务器(未成功)

    sudo apt-get install pptp-linux sudo pptpsetup --create testvpn --server 127.0.0.1 --username your_u ...

  7. Ubuntu-18.04.2系统 Nginx+uWSGI+Django 部署生产环境

    首先准备环境: 1.使用虚拟机 VMware Workstation Pro (也可以不用),安装Ubuntu-18.04.2系统 开始搭建环境 (因为ubuntu18.4.2集成了python3.6 ...

  8. Ubuntu18.04 更换源

    在虚拟机新建一个Ubuntu18.04.1-live-server-amd64当做服务器 在安装软件时报错: slave@slave:~$ sudo -s[sudo] password for sla ...

  9. Hyper-V虚拟机上安装Ubuntu16.04/Ubuntu18.04.2LTS,搭建GitLab

    我的电脑系统是win10,内存8g如下 一开始是装的Ubuntu18.04.2LTS, gitlab-ce_12.1.3-ce.0_amd64.deb,每次能够安装成功,但是修改完ip后,运行gitl ...

随机推荐

  1. Hadoop(二)—— HDFS

    HDFS(Hadoop Distributed File System)Hadoop分布式文件系统. 一.HDFS产生的背景 随着数据量越来越大,如果大到一台主机的磁盘都存放不下,该如何解决这个问题. ...

  2. MyBatis你只写了接口为啥就能执行SQL啊?

    一.静态代理 又是一年秋招季,很多小伙伴开始去大城市打拼.来大城市第一件事就是租房,免不了和中介打交道,因为很多房东很忙,你根本找不到他.从这个场景中就可以抽象出来代理模式: ISubject:被访问 ...

  3. (未完成)catalyst-system WriteUp(2019暑假CTF第一周reverse)

    目录 预备学习--Linux实践:ELF文件格式分析 一.概述 二.分析ELF文件头(ELF header) 三.通过文件头找到section header table,理解其内容 四.通过secti ...

  4. 查询优化 In Oracle

    Cost-based query transformation in Oracle Enhanced Subquery Optimizations in Oracle Cost-based query ...

  5. Weblogic部署web项目获取项目根目录为null

    写在前面 图片上传功能, web项目部署在本地Tomcat上并没有问题, 但是打成war包部署到Linux服务器Weblogic下却出现如题问题, 导致图片上传失败. 问题代码 String real ...

  6. k8s 新加节点

    拷贝原来的内容过去,删除 cd /opt/kubernetes/ssl/ 1. 删除    kubelet-crt    key kube-proxy-key.pem  相关的这些key是,根据too ...

  7. 记某app内购破解 – 安卓逆向菜鸟的初体验

    前言 因为某个机缘,我拿到一个赛车app,玩了一会想买个装备,居然要我掏钱包,作为一名cracker,我觉得我的尊严受到了严重的蔑视(无奈钱包空空),我觉得要捍卫我那脆弱的玻璃心(钱包),所以,开干吧 ...

  8. [Java复习] Spring Cloud - Netflix

    Spring Cloud Netflix常用组件 服务注册与发现:Eureka 服务负载均衡:Ribbon 服务声明式客户端:Feign 服务熔断:Hystrix 服务网关: Zuul Eureka: ...

  9. 本地jar包上传docker容器

    先安装docker的注册服务器: [root@VM_0_7_centos ~]# docker run -d -p : --restart=always --name registry2 regist ...

  10. 【翻译】Flink Table Api & SQL —— 连接到外部系统

    本文翻译自官网:Connect to External Systems  https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev ...