win10通过ubuntu虚拟机安装Gitlab的过程详解

Gitlab提供了非常完整的Git托管服务。那现在我就根据我自己的经验,图文并茂地详细介绍一下如何搭建和配置Gitlab,以及在过程中可能会遇到的坑。

我们选择困难模式来讲解整个过程:
假如你使用的是一台Win10电脑,并且从没接触过虚拟机、Linux、Gitlab,那就可以按照下面的步骤一步步来配置。如果你熟悉其中部分过程或者拥有其中部分配置,可以选择性地跳过它们。

简单来说分为以下几个步骤:

  1. 开启虚拟机
  2. 安装ubuntu
  3. 安装Gitlab
  4. 配置Gitlab

开启虚拟机

在win8和win10上,我们建议使用系统自带的Hyper-V来安装镜像文件。

win10平台上,只有win10专业版才有Hyper-V功能,假如你的PC系统是win10家庭版,请升级到win10专业版,否则无法使用Hyper-V创建虚拟机。

启用Hyper-V组件

Hyper是默认关闭的,所以我们需要手动开启。

  1. 打开控制面板
  2. 程序和功能
  3. 启用或关闭Windows功能
  4. 找到Hyper-V,并勾选,确认
  5. 系统会自动安装Hyper-V,然后系统会要求重启使设置生效。
    打开Hyper,会重启
Hyper0.png

在查找Hyper-V的时候,如果发现Hyhper-V为灰色,需要在BIOS中将支持虚拟机的选项Enable。

使用Hyper-V开启Ubuntu虚拟机

首先去ubuntu的官网下载操作系统:http://www.ubuntu-china.cn/download

由于技术资料都具有时效性,如果你想用和本教程一样的版本,可以从这里下载ubuntu-16.04.3-amd64.iso

找到Hyper-V管理器,启动Hyper-V

Hyper_search.png

在Hyper-V管理器面板上点击新建虚拟机

Hyper1.png
hHyper2.png
hyper3.png
hyper4.png

分配内存的个人经验:

  1. 使用i5,8G内存电脑,分配3G给虚拟机,会有点卡。
  2. 使用i7,16G内存电脑,分配5G给虚拟机,很流畅。
hyper5.png

配置网络选择默认即可。或者也可以在Hyper-V管理器主面板上右侧的“虚拟交换机管理器”中新建一个网络。

hyper6.png
hyper7.png

找到刚刚下载的ubuntu镜像文件,准备进行安装虚拟机

hyper8.png
hyper9.png

点击完成之后,虚拟机安装完成。在Hyper-V管理面板上,出现了一个名为ubuntu的虚拟机。

hyper10.png

安装ubuntu

在ubuntu上点击启动,此时虚拟机会加载ubuntu的ISO文件并引导启动。然后点击连接(或者双击左下角的小屏幕)。先选择语言,然后选择安装。

ubuntu1.png

ubuntu2.png

ubuntu3.png

ubuntu4.png

ubuntu5.png

ubuntu6.png

ubuntu7.png

ubuntu8.png

安装完成,系统会要求重新启动。

重启过程中,有些人可能会遇到下面的问题。解决方法是,把ubuntun关了重新启动即可。

ubuntu9.png

重启之后,输入之前设置的登录密码,ubuntu就安装完成了。

ubuntu10.png

Linux系统最实用的就是终端命令行了。在桌面CTRL+ALT+T就可以调出终端命令行,再次CTRL+ALT+T就可以打开另一个终端命令行。

ubuntu11.png

安装Gitlab

终于到了我们的主题Gitlab了,如果你本身拥有一台Linux系统电脑(而且我们也建议在一台稳定的Linux上搭建Gitlab服务,而非windows虚拟机),那么可以直接从这里开始。

在ubuntu上安装Gitlab基本上都在终端中进行。有两个注意点:

  1. 输入命令的某些过程中会要求输入电脑密码,输入的密码是不会显示的,所以不要以为输入法坏了。
  2. Linux终端上的赋值粘贴是CTLR+SHIFT+C 和CTRL+SHIFT+V。CTRL+C的功能是中断操作,不要弄错。
安装依赖
sudo apt-get install curl openssh-server ca-certificates postfix

过程中应该会弹出对话框,如图选择。

instal.png
下载安装Gitlab安装包(可选)
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

sudo apt-get install gitlab-ce 

这一步的作用是从网上来下载安装,根据经验网速一般很慢,而且容易发生下载安装失败的情况。

手动安装Gitlab安装包(建议)

可以从这里下载本教程使用的适用ubuntu64位版本的Gitlab安装程序。

gitlab-ce_7.10.5~omnibus-1_amd64.deb

下载完之后,终端定位到安装包所在文件目录。如果你是第一次使用Linux,不知道文件的目录是什么,可以右击文件查看属性:

path.png

定位到安装包所在文件目录之后,输入安装命令。

sudo dpkg -i gitlab-ce_7.10.5~omnibus-1_amd64.deb

最后在终端上如果看见了类似"It looks like GitLab has not been..."表示安装成功,不要被文字欺骗。

配置动Gitlab

分别输入下面4条命令,打开配置文件。

sudo mkdir -p /etc/gitlab

sudo touch /etc/gitlab/gitlab.rb

sudo chmod 600 /etc/gitlab/gitlab.rb

sudo gedit /etc/gitlab/gitlab.rb

ter_1.png

找到external_ur,改成你Linux的本地IP地址,端口号建议9090,因为8080一般有时候会被tomcat占用,如果用了8080,稍后你打开网址的时候可能会报502错误。
如"http://172.21.162.14:9090"

再在下面找到ngix['listen_addresses']和ngix['listen_port'],分别改成和上面的一样。
如['172.21.162.14']和9090。

保存文件,然后关闭。

启动Gitlab,使配置生效
sudo gitlab-ctl reconfigure

在这一步过程中,可能会遇到一些问题。如果终端中发生这种错误:

Error executing action `run` on resource 'execute[initctl status gitlab-runsvdir]'

可以用以下方法来解决:在终端中依次输入下面4条命令。

ls -a /etc/init/gitlab-runsvdir.conf

sudo initctl status gitlab-runsvdir

sudo dpkg-divert --local --rename --add /sbin/initctl

sudo ln -s /bin/true /sbin/initctl

error_handle.png

然后再次输入下面的命令,重新配置

sudo gitlab-ctl reconfigure

如果在这个过程中,卡在action run 无法继续下去,CTRL+ALT+T打开一个新的终端,输入下面的命令,原Gitlab重配置程序便会继续执行下去。

sudo /opt/gitlab/embedded/bin/runsvdir-start
handle2.png
配置完成,访问本地Gitlab网址

输入之前配置的external_ur,进入本地Gitlab首页。第一次登陆默认管理员密码和用户名:

  • Username: root
  • Password: 5iveL!fe
netok.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,948评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,371评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,490评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,521评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,627评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,842评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,997评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,741评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,203评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,534评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,673评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,339评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,955评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,770评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,000评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,394评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,562评论 2 349

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,799评论 25 707
  • 小学时,老师问了我们一个问题“世上先有男的还是女的?”“男的!男的是先生”。呵,好不服气。 生下来的那一刻就注定我...
    花忆锦年阅读 499评论 0 0
  • 云低垂 雨轻落 于这世界 你我都是过客 相遇即同行 归去的路上 我的脚印比来时 深了一倍
    雀替阅读 343评论 0 2
  • 互联网+的浪潮下降生了大批量的O2O企业,2016年火了直播,红了AI,不论是产品还是技术,互联网行业繁华水平都不...
    java大湿兄阅读 1,358评论 7 51
  • 【这篇是爸爸最初写自己少年回忆的第一篇,少年的回忆每篇都是爸爸一字一句写上去,支持爸爸。】 我的小学是在...
    Rainly阅读 258评论 0 0