基于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 ...
随机推荐
- 【canvas】高级功能一 变形
[canvas]Demo1 scale缩放 <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- Java面试通关宝典
1.说说Java中异常的分类: 答:可分为Error和Exception. 从概念角度分析: Error:是程序无法处理的系统错误,编译器不做检查: Exception:是程序可以处理的异常,捕获后可 ...
- Kali Linux Web渗透测试手册(第二版) - 1.3 - 靶机的安装
Kali Linux Web渗透测试手册(第二版) - 1.3 - 靶机的安装 一.配置KALI Linux和渗透测试环境 在这一章,我们将覆盖以下内容: 在Windows和Linux上安装Virt ...
- 【设计模式】行为型07备忘录模式(Memento Pattern)
参考地址:http://www.runoob.com/design-pattern/memento-pattern.html 对原文总结调整,以及修改代码以更清晰的展示: 备忘录模式(快照模式): ...
- 【JVM】01虚拟机内存模型
学习链接:https://blog.csdn.net/u010425776/article/details/51170118 博主整理的条理清晰,在这里先感谢博主分享 去年看视频学习写过一篇JVM的博 ...
- Shell学习笔记1》转载自runnoob
无论是shell 还是bat,都是与操作系统结合非常紧密的东西,所以在此占坑,希望有朝一日能够把这些东西融会贯通,于是在此占坑~ 学习地址:http://www.runoob.com/linux/li ...
- nginx之gzip压缩
nginx的gizp压缩 为了使网站节省带宽和加快访问速度,在服务器方面的一个优化的就是使用nginx提供的gzip压缩. 一.使用压缩原理: 1.当用户使用浏览器访问网站时,就是在发送一个http请 ...
- Java 位域
Java位域 这个概念是在 Effective Java中了解到的, 可以通过EnumSet来代替位域这种方式表达. 并不是很常见的概念, 因此记录下. 如果在这之前恰好了解过 bitmap这种数据结 ...
- Android之控件学习
文本域,类似于HTML里的textarea <EditText android:id="@+id/edit_text" android:layout_width=" ...
- Windows鼠标右键菜单添加SublimeText打开选项
Windows上将使用SublimeText打开文件的选项添加到鼠标右键菜单. 新建reg后缀的注册表文件,编辑添加内容 Windows Registry Editor Version 5.00 [H ...