基于Bitnami gitlab OVA包的gitlab 环境搭建
前言
最近在折腾gitlab,本篇记录搭建的过程方便以后查找
环境
Windows server + VMware
安装
为方便本次我们直接采用Bitnami的VOA安装包(VOA格式可同时兼容VirtualBox和VMware),可以直接在虚拟机导入即可。安装包位于这里。
打开VMware Workstation, File -> Open, 选择刚刚下载好的VOA文件,根据界面内容进行虚拟机配置。
安装完后,即可进入虚拟机,显示如下:

- 显示gitlab的url地址,默认web登陆用户'root'及登陆密码
- 同时显示默认的虚拟机用户和密码: bitnami
静态IP配置
默认虚拟机采用DHCP配置,我们可以自行配置成静态IP。官方文档
使用以下命令获取网络接口名称。通常,接口名称的格式为enXXXX
sudo ifconfig

可以看到网络接口名为ens32通过复制现有配置文件并将其放在/ etc / systemd / network目录中,为网络接口创建配置文件。在此示例中,假设新配置文件名为25-wired.network
cd /etc/systemd/network
sudo cp 99-dhcp.network 25-wired.network
编辑新配置文件并将其更新为下面的配置。将INTERFACE-NAME占位符替换为网络接口的实际名称(这里应为ens32),并使用反映本地网络的值更新示例IP地址,网关和DNS服务器
[Match]
Name=INTERFACE-NAME
[Network]
Address=10.1.10.9/24
Gateway=10.1.10.1
DNS=10.1.10.1
- 保存更改并重新启动虚拟机以使更改生效。
启用SSH连接
默认情况下,在Bitnami虚拟机中SSH服务是禁用的。要启用SSH服务器,请在服务器控制台上执行以下命令:官方文档
sudo rm -f /etc/ssh/sshd_not_to_be_run
sudo systemctl enable ssh
sudo systemctl start ssh
启用后我们就可以通过SSH客户端连接到虚拟机。登陆用户名和密码可以从虚拟机启动时显示界面获取(默认:bitnami)

SSL配置
默认情况下,Bitnami已经帮我们将gitlab配置成了https访问方式,同时也提供了一个测试证书。通过命令编辑查看gitlab配置:
sudo vim /etc/gitlab/gitlab.rb


可以看到bitnami提供给我们的默认证书放在etc/gitlab/ssl/下。
下面我们来生成我们自己的证书(自签证书),同时让google chrome浏览器来识别。参考文档。
因本次我们需要生成本地IP的自签证书,ssl.conf配置有点小区别,主要是[alt_names]节点下的DNS.*要更换成IP.*. 完整ssl.conf:
[req]
prompt = no
default_md = sha256
default_bits = 2048
distinguished_name = dn
x509_extensions = v3_req
[dn]
C = TW
ST = Taiwan
L = Taipei
O = Duotify Inc.
OU = IT Department
emailAddress = admin@example.com
CN = localhost
[v3_req]
subjectAltName = @alt_names
[alt_names]
IP.1 = 172.30.3.88
使用openssl命令生成
openssl req -x509 -new -nodes -sha256 -utf8 -days 3650 -newkey rsa:2048 -keyout server.key -out server.crt -config ssl.conf
使用WinScp上传
如果你不在bitnami虚拟机里生成证书,就需要将生成的证书(server.key和server.crt)上传到bitnami虚拟机里。
我们使用WinScp sftp协议来上传,由于默认的bitnami登陆用户没有权限来操作etc/gitlab/ssl/目录。必须对WinScp做特别设置,如下:
在新建连接对话框,点击Advance按钮,切换到sftp设置:

切换到shell设置:

完成以上步骤后就可以连上bitnami虚拟机。上传完证书后,最好重启一下虚拟机。
让google chrome浏览器识别证书
默认情况下google chrome并不会识别我们的自签证书,必须将证书导入到我们系统的受信任的根证书颁发机构

安装方法:
双击我们刚才生成的server.crt文件,在对话框中选择
安装证书...

按照向导提示将证书安装到
受信任的根证书颁发机构下。打开chrome浏览器查看:

基于Bitnami gitlab OVA包的gitlab 环境搭建的更多相关文章
- 基于全志H3芯片的ARM开发环境搭建
基于全志H3芯片的ARM开发环境搭建 最近买了个友善之臂的NanoPi M1板子,又在网上申请了个NanoPi NEO板子,这两个都是基于全志H3芯片的Crotex-A7四核ARM开发板,两个板子可以 ...
- 基于docker的 Hyperledger Fabric 多机环境搭建(上)
环境:ubuntu 16.04 Docker 17.04.0-ce go 1.7.4 consoul v0.8.0.4 ======================================= ...
- 基于vlc sdk的二次开发--环境搭建、编译
前言 关于 搭建.编译VLC,不同的平台有不同的方法,可以参考wiki. 其中在windows下编译VLC有两种方式,MSYS+MinGW和CygWin.通过测试,最后决定采用MSYS+MinGW搭建 ...
- 基于 Android NDK 的学习之旅-----环境搭建
工欲善其事 必先利其器 , 下面介绍下 Eclipse SDK NDK Cygwin CDT 集成开发环境的搭建. 1.Android 开发环境搭建 Android开发环境搭建不是重点,相信看此文章的 ...
- 基于Prometheus和Grafana的监控平台 - 环境搭建
相关概念 微服务中的监控分根据作用领域分为三大类,Logging,Tracing,Metrics. Logging - 用于记录离散的事件.例如,应用程序的调试信息或错误信息.它是我们诊断问题的依据. ...
- GitLab篇之Linux下环境搭建
之前公司一直在使用微软的VSS和SVN做为源代码管理工具,考虑到VSS和SVN的局限性,个人一直建议我们应该采用Git来管理我们的源代码.Git的好处不多说相信大家也都知道的.Git不仅仅是一个源代码 ...
- 在windows环境下基于sublime text3的node.js开发环境搭建
首先安装sublime text3,百度一堆,自己找吧.理论上sublime text2应该也可以.我只能说一句:这个软件实在是太强悍了. 跨平台,丰富的插件体系,加上插件基本上就是一个强悍的ide了 ...
- 基于cygwin构建u-boot(一)环境搭建
从本文开始,更系统的描述基于cygwin构建u-boot. 之前<痛苦的版本对齐>系列,对于cygwin环境下Sourcery CodeBench,u-boot-1.1.6的构建有侧面的说 ...
- 基于docker的 Hyperledger Fabric 多机环境搭建(下)
Docker环境部署见上一篇博客:http://www.cnblogs.com/cnblogs-wangzhipeng/p/6994541.html. 我们部署分布式容器服务后就要在上面部署Fabri ...
随机推荐
- 使用MSYS2环境中编译Qt5.5.0的补丁
Qt的configure脚本对MinGW静态编译支持不太完善,总有这样那样的问题.如果你不嫌麻烦,而且可以接受高版本的Qt的话,可以考虑使用我做的补丁在MSYS2环境中编译.Qt5.4.2的补丁 Qt ...
- JavaWeb实现上传文件
需要 commons-io与commons-fileupload 首先在jsp中创建一下布局 <%@ page contentType="text/html;charset=UTF-8 ...
- React性能优化之PureComponent 和 memo使用分析
前言 关于react性能优化,在react 16这个版本,官方推出fiber,在框架层面优化了react性能上面的问题.由于这个太过于庞大,我们今天围绕子自组件更新策略,从两个及其微小的方面来谈rea ...
- 【粗略版】Linux deploy手机上创建自己的服务器
偶尔看见了一篇安卓手机z安装linux的文章,正好自己有一个旧手机,心里有个大胆的想法. 简单来说,就是把旧手机安装linux然后装上容器,尝试部署一个简单项目,下面会记录下过程: 首先了解下这个软件 ...
- PATB 1018. 锤子剪刀布
时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图 ...
- 异常:Parameter 'username' not found. Available parameters are [arg1, arg0, param1, param2]
内容中包含 base64string 图片造成字符过多,拒绝显示
- 用.NET Core实现一个类似于饿了吗的简易拆红包功能
需求说明 以前很讨厌点外卖的我,最近中午经常点外卖,因为确实很方便,提前点好餐,算准时间,就可以在下班的时候吃上饭,然后省下的那些时间就可以在中午的时候多休息一下了. 点餐结束后,会有一个好友分享 ...
- 记一次linux通过jstack定位CPU使用过高问题或排查线上死锁问题
一.java定位进程 在服务器中终端输入命令:top 可以看到进程ID,为5421的cpu这列100多了. 记下这个数字:5421 二.定位问题进程对应的线程 然后在服务器中终端输入命令:top -H ...
- 微服务-springcloud-注册中心
创建服务注册中心(eureka-server) 1.创建项目,选择 Eureka Server 别的都不要选择,next-finish 2.application.yml中写入如下信息:通过eurek ...
- vue.js 解决跨域问题
我们调试vue.js代码的时候一般都用chrome, 下载插件 进入chrome应用商店 搜索 重启chrome就可以解决跨域问题