前言

想要成为一名架构师,一定要有从无到有搭建环境的能力,这是作为架构师的基础技能,而gitLab服务器的搭建一定又是重中之重。

相信很多小伙伴的公司也在使用gitLab,但都是你们公司的架构师搭建好的,你是否好奇它是怎么搭建的呢?

今天王子就与大家实际操作一下gitLab的搭建,如果你还不知道什么是gitLab,请自行查阅资料了解。

环境介绍

首先来介绍一下工作环境。

我们采用的是Win10系统,安装了Vmvare虚拟机,并在虚拟机中安装了CentOS7操作系统,内存分配了2.5G,gitLab是比较吃内存的,至少要分配2G内存,并且已经安装好了Docker,Docker配置了阿里云镜像。这部分操作网上教程有很多,就不做介绍了。

我们的目的就是在虚拟机中使用Docker安装一个gitLab环境,供开发使用。

这里有一点要说明的是,我们的虚拟机采用的网络方式是Nat的方式,使用Nat方式连接,如果同局域网的其他电脑想要访问你的虚拟机,必须要配置端口映射,然后再通过你电脑的IP地址和端口号来映射访问你的虚拟机。

安装gitLab

好了,现在我们开始正式安装gitLab.

王子选择的是gitLab的一款中文社区版,版本不做限制,首先就是去拉取Docker镜像,如下:

docker pull beginor/gitlab-ce:11.0.1-ce.0

这一部分的拉取时间可能较慢,因为镜像比较大。

接下来我们要创建几个文件夹,用来映射到Docker容器中,方便我们配置容器,如下:

mkdir -p /home/gitlab/etc

mkdir -p /home/gitlab/log

mkdir -p /home/gitlab/data

之后就是运行容器了,如下:

docker run --detach --publish 8443:443  --publish 8090:80  --name gitlab --restart unless-stopped 
-v /home/gitlab/etc:/etc/gitlab -v /home/gitlab/log:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab beginor/gitlab-ce:11.0.1-ce.0

我们还需要修改几处配置文件,

修改/home/gitlab/etc/gitlab.rb

把external_url改成我们虚拟机的地址

vi /home/gitlab/etc/gitlab.rb

external_url 'http://192.168.220.110'

修改/home/gitlab/data/gitlab-rails/etc/gitlab.yml

vi /home/gitlab/data/gitlab-rails/etc/gitlab.yml

找到关键字 * ## Web server settings *

将host的值改成虚拟机地址,port改成映射到外部主机的端口

之后我们重启Docker容器,就可以访问到gitLab页面了。

总结

到这里搭建工作就完成了,要注意的就是虚拟机的网络连接方式问题,如果使用的Nat的方式记得要配置端口映射,或者你也可以直接使用桥接的方式,连接真实的电脑网卡。

使用Docker搭建gitLab还是很容易的,这让我们再次体会到了Docker的强大。

往期文章推荐:

JVM专栏

消息中间件专栏

并发编程专栏

架构师基础技能-搭建gitLab的更多相关文章

  1. 架构师入门:搭建双注册中心的高可用Eureka架构(基于项目实战)

    本文的案例是基于 架构师入门:搭建基本的Eureka架构(从项目里抽取) 改写的. 在上文里,我们演示Eureka客户端调用服务的整个流程,在这部分里我们将在架构上有所改进.大家可以想象下,在上文里案 ...

  2. Java架构师必备技能:docker使用大全

    前言   java工程师成长为架构师是一个艰难且耗费心力的过程,不仅仅需要熟悉java体系内相关的技术,同时要掌握许多运维相关的操作技能,随着k8s逐渐成为微服务持续集成开发难以越过的基础设施之后,d ...

  3. 大数据架构师基础:hadoop家族,Cloudera产品系列等各种技术

    大数据我们都知道hadoop,可是还会各种各样的技术进入我们的视野:Spark,Storm,impala,让我们都反映不过来.为了能够更好的架构大数据项目,这里整理一下,供技术人员,项目经理,架构师选 ...

  4. IBM Java架构师的技能

    一天,群里飘过一个IBM招聘信息.我看过之后,也只是如此而已. 大家好!我是XXX,IBM招聘java架构师,如今还有38个名额 学历大专以上即可,英语能面试交流的.项目有非常多到时候依据您面试会详谈 ...

  5. JAVA高级架构师基础功:Spring中AOP的两种代理方式:动态代理和CGLIB详解

    在spring框架中使用了两种代理方式: 1.JDK自带的动态代理. 2.Spring框架自己提供的CGLIB的方式. 这两种也是Spring框架核心AOP的基础. 在详细讲解上述提到的动态代理和CG ...

  6. 【ZZ】大数据架构师基础:hadoop家族,Cloudera系列产品介绍

    http://www.36dsj.com/archives/17192 大数据我们都知道hadoop,可是还会各种各样的技术进入我们的视野:Spark,Storm,impala,让我们都反映不过来.为 ...

  7. 成为java架构师的技能

    0: 数据结构算法 数组.链表.堆.栈.队列.Hash表.二叉树等; 算法思想:递推.递归.穷举.贪心.分治.动态规划.迭代.分枝界限; 排序查找 B+/B-数.红黑树.图等; 图的深度优先搜索.图的 ...

  8. 架构师入门:搭建基本的Eureka架构(从项目里抽取)

    没有废话,直接上干货,理论部分大家可以看其它资料. 这里是部分关键代码,如果需要全部可运行的代码,请给本人留言. 在后继,还将给出搭建高可用Eureka架构的方式. 1 Eureka的框架图 在Eur ...

  9. 添物零基础到架构师(基础篇) - JavaScript

    JavaScript是什么? JavaScript是web开发必须学习的,ECMAScript是其规则来源. JavaScript的历史 Developed by Brendan Eich of Ne ...

随机推荐

  1. 在Guitar Pro中如何模拟电子管音响

    在这篇文章中,我们将使用Guitar Pro 7中的功能和工具,完成构建一个真实的电子管吉他音箱调音过程. 虽然Guitar Pro是用于创建吉他乐谱的工具,但在新版本中(主要是6和7)它也有一些模拟 ...

  2. CorelDRAW常用工具之涂抹工具

    CDR作为绘图软件或者说平面设计软件使用频繁的功能之一,就是为绘制好的图片进行涂抹混色. 1.基本操作 CorelDRAW平面设计软件的涂抹工具是在形状工具组里的,打开左侧工具栏"形状&qu ...

  3. 手把手为大家演示fat32转ntfs操作过程,一看就会

    fat32和ntfs是两种我们较为常见的u盘或者硬盘格式.它们都有着各自的特点,但是相比之下,使用ntfs文件格式我们可以做出很多fat32不能实现的功能.在日常生活中,我们会面临到需要把fat32转 ...

  4. 怎么用导图软件iMindMap整理C语言知识点

    C语言是一门非常基础的编程语言,学习它的难点不在于语言的理解,而在于繁琐的记忆点,而当我们使用思维导图将细碎的知识点拉到框架中去后,C语言的难度就大大降低了. 接下来就为大家介绍一下我使用iMindM ...

  5. 「CERC2017」Donut Drone

    题目链接 洛谷P4739 题目翻译: 你正在模拟无人机探索一个不稳定的环状行星的过程.技术上说,无人机正在穿过一个环形网格---一个在两维上都首尾环绕在一起的矩形网格.格子的行号从上到下依次编号为\( ...

  6. sql常用函数整理

    SQL中包含以下七种类型的函数: 聚合函数:返回汇总值. 转型函数:将一种数据类型转换为另外一种. 日期函数:处理日期和时间. 数学函数:执行算术运算. 字符串函数:对字符串.二进制数据或表达式执行操 ...

  7. Logstash使用mongodb插件报错: ArgumentError: wrong number of arguments (given 2, expected 1)

    目录 背景 安装插件过程 背景 今天在使用logstash收集日志存储到mongodb的安装过程遇到了个错误,记录下来,错误就是下面这样: 配置文件很简单,由于是测试环境,命令行传入日志输入由ruby ...

  8. 【树形dp】【CF161D】distance on a tree + 【P1352】没有上司的舞会

    T1题面: 输入点数为N一棵树 求树上长度恰好为K的路径个数 (n < 1e5, k < 500) 这是今天的考试题,也是一道假的紫题,因为我一个根本不会dp的蒟蒻只知道状态就一遍A掉了- ...

  9. CentOS初级扫盲

    发行版介绍 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX(可移植操作系统接口Portable Operating System Interface ,缩写为 POSIX ...

  10. LeetCode 041 First Missing Positive

    题目要求:First Missing Positive Given an unsorted integer array, find the first missing positive integer ...