架构师基础技能-搭建gitLab
前言
想要成为一名架构师,一定要有从无到有搭建环境的能力,这是作为架构师的基础技能,而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的强大。
往期文章推荐:

架构师基础技能-搭建gitLab的更多相关文章
- 架构师入门:搭建双注册中心的高可用Eureka架构(基于项目实战)
本文的案例是基于 架构师入门:搭建基本的Eureka架构(从项目里抽取) 改写的. 在上文里,我们演示Eureka客户端调用服务的整个流程,在这部分里我们将在架构上有所改进.大家可以想象下,在上文里案 ...
- Java架构师必备技能:docker使用大全
前言 java工程师成长为架构师是一个艰难且耗费心力的过程,不仅仅需要熟悉java体系内相关的技术,同时要掌握许多运维相关的操作技能,随着k8s逐渐成为微服务持续集成开发难以越过的基础设施之后,d ...
- 大数据架构师基础:hadoop家族,Cloudera产品系列等各种技术
大数据我们都知道hadoop,可是还会各种各样的技术进入我们的视野:Spark,Storm,impala,让我们都反映不过来.为了能够更好的架构大数据项目,这里整理一下,供技术人员,项目经理,架构师选 ...
- IBM Java架构师的技能
一天,群里飘过一个IBM招聘信息.我看过之后,也只是如此而已. 大家好!我是XXX,IBM招聘java架构师,如今还有38个名额 学历大专以上即可,英语能面试交流的.项目有非常多到时候依据您面试会详谈 ...
- JAVA高级架构师基础功:Spring中AOP的两种代理方式:动态代理和CGLIB详解
在spring框架中使用了两种代理方式: 1.JDK自带的动态代理. 2.Spring框架自己提供的CGLIB的方式. 这两种也是Spring框架核心AOP的基础. 在详细讲解上述提到的动态代理和CG ...
- 【ZZ】大数据架构师基础:hadoop家族,Cloudera系列产品介绍
http://www.36dsj.com/archives/17192 大数据我们都知道hadoop,可是还会各种各样的技术进入我们的视野:Spark,Storm,impala,让我们都反映不过来.为 ...
- 成为java架构师的技能
0: 数据结构算法 数组.链表.堆.栈.队列.Hash表.二叉树等; 算法思想:递推.递归.穷举.贪心.分治.动态规划.迭代.分枝界限; 排序查找 B+/B-数.红黑树.图等; 图的深度优先搜索.图的 ...
- 架构师入门:搭建基本的Eureka架构(从项目里抽取)
没有废话,直接上干货,理论部分大家可以看其它资料. 这里是部分关键代码,如果需要全部可运行的代码,请给本人留言. 在后继,还将给出搭建高可用Eureka架构的方式. 1 Eureka的框架图 在Eur ...
- 添物零基础到架构师(基础篇) - JavaScript
JavaScript是什么? JavaScript是web开发必须学习的,ECMAScript是其规则来源. JavaScript的历史 Developed by Brendan Eich of Ne ...
随机推荐
- Spark3.0.1各种集群模式搭建
对于spark前来围观的小伙伴应该都有所了解,也是现在比较流行的计算框架,基本上是有点规模的公司标配,所以如果有时间也可以补一下短板. 简单来说Spark作为准实时大数据计算引擎,Spark的运行需要 ...
- Service Cloud零基础学习(二)Entitlement & MileStone
https://trailhead.salesforce.com/content/learn/modules/entitlements 很少会有人不买东西,买的多了也很少没有人没有经历过售后流程.我们 ...
- python笔记(1)---数据类型
数据类型 基本的五大数据类型 对python中的变量有如下的五种基本的数据类型: Number数字 list列表 Tuple元组 string字符串 Dictionary字典 1.Number [注意 ...
- Jmeter监控插件
Jmeter-Plugins支持CPU.Memory.Swap.Disk和Network的监控,在测试过程中更加方便进行结果收集和统计分析. 一.准备工作: 1.下载Jmeter-Plugins插件, ...
- 如何查看CDR文件是出自哪个版本?
如何才能知道某个cdr文件用哪个版本的CorelDRAW软件打开?网上CorelDRAW软件有很多版本,都不知该下哪个了?这是我听到大家问道最多的问题,这是因为CDR低版本软件打不开高版本文件. 方法 ...
- leetcode152. 乘积最大子序列
给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数).示例 1:输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6.示例 2:输入: ...
- springboot打jar包将引用的第三方包、配置文件(.properties、.xml)、静态资源打在包外
1.外置配置文件 Springboot读取核心配置文件(.properties)的外部配置文件调用方式为 jar包当前目录下的/config目录 因此要外置配置文件就在jar所在目录新建config文 ...
- 痞子衡嵌入式:一次利用IAR自带CRC完整性校验功能的实践(为KBOOT加BCA)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是利用IAR自带CRC完整性校验功能的一次实践(为KBOOT加BCA). 痞子衡之前写过两篇关于IAR中自带CRC校验功能的文章 < ...
- IntelliJ IDEA 配置《算法》(第四版)
红皮的算法一书,内部代码的实现调用了作者写的一个包.为了运行书内代码,需要配置相应的环境. 准备 网站:https://algs4.cs.princeton.edu/code/ 工具:IntelliJ ...
- Plant Leaves Classification植物叶子分类:基于孪生网络的小样本学习方法
目录 Abstract Introduction PROPOSED CNN STRUCTURE INITIAL CNN ANALYSIS EXPERIMENTAL STRUCTURE AND ALGO ...