从VirtualBox到Docker到Gitlab的安装

下载Oracle VM VirtualBox,用来创建Linux虚拟机

  1. Oracle VM VirtualBox官网
  2. 进入官网后的页面,点击Download VirtualBox 6.1
    Oracle VM VirtualBox官网3. 下载Windows版本的VirtualBox
    Oracle VM VirtualBox Download 页面

下载CentOS镜像

  1. CentOS下载
  2. 点击链接后的页面
    CentOS下载
  3. 我选择的是CentOS Linux DVD ISO,选择后打开的页面。据说下载aliyun的速度会快一点。
    CentOS Linux DVD ISO

使用上面下载的Oracle VM VirtualBox,搭配CentOS.iso创建Linux虚拟机 & 如何ping通宿主机和虚拟机

可以参考这个VirtualBox下安装CentOS7系统

因为CentOS8下载docker太多坑了,我切换成CentOS7
之前本机连接过CentOS8,后面尝试用本机连CentOS7时,报了:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 的错误。具体解决方法,网上有很多,这里放一个连接跳转。
Mac和Linux远程连接服务器异常修复
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

至此,虚拟机就搭建好了。而且也能够通过本机ssh方式连接虚拟机操作。Oracle VM VirtualBox上操作虚拟机的界面很不友好。


虚拟机安装docker

首先把虚拟机的防火墙关了

# 关闭防火墙
systemctl stop firewalld.service
# 永久关闭防火墙
systemctl disable firewalld.service

一开始下载的是CentOS8,在安装docker过程中遇到各式各样的问题。中途查了很多资料最终也么有解决问题。这里还是把过程中查到觉得有用的资料列出来。

我从CentOS8切换成CentOS7,再试一下。
后面用回自己的电脑,不用公司的网络和电脑。发现就没有那么多乱七八糟的问题出现。

正式安装docker
  1. 可以参考官网Install Docker Engine on CentOS
  2. 不想看英文,也可以借鉴这篇文章Centos7上安装docker
  3. docker-compose安装-官网
    具体命令:
#1 确保 yum 包更新到最新
sudo yum update

#2 卸载旧版本(如果安装过旧版本的话)
sudo yum remove docker  docker-common docker-selinux docker-engine

#3 安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

#4 设置yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

#5 安装docker
sudo yum install docker-ce

#6 启动并加入开机启动
sudo systemctl start docker
sudo systemctl enable docker

#7 验证安装是否成功
docker version

#8 后面会用到docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

#9 赋予权限
sudo chmod +x /usr/local/bin/docker-compose

关于宿主机与虚拟机的连接
当虚拟机ping不通宿主机时,可以看看这篇文章。虚拟机ping不通主机,但是主机可以ping通虚拟机


下载Gitlab
  1. 打开Docker Hub
    Docker Hub2. 选择想要的版本
    在这里插入图片描述3. 查看官网的安装文档
    在这里插入图片描述4. 这里有3种安装方式,正常我们应该只用到Docker Engine & Docker Compose
    在这里插入图片描述
使用Docker Compose的方式安装
  1. 拉GItlab镜像
docker pull store/gitlab/gitlab-ce:11.10.4-ce.0

拉GItlab镜像2. 查看镜像是否拉取成功

docker images

查看镜像是否拉取成功3. 跟着官网的步骤,写一个docker-compose.yml的文件
跟着官网的步骤,写一个**docker-compose.yml**的文件
4. 关于docker-compose.yml

web:
  image: 'gitlab/gitlab-ce:latest'
  restart: always
  hostname: 'gitlab.com'
  environment:
    GITLAB_OMNIBUS_CONFIG: |
      external_url 'http://192.168.0.10' -> 这里要改成IP地址,例如,我的IP是:192.168.0.10
  ports:
    - '80:80'
    - '443:443'
    - '2222:22' -> 我虚拟机22的端口给ssh占用了,所以我这里改成了2222
  volumes:
    - '/srv/gitlab/config:/etc/gitlab'
    - '/srv/gitlab/logs:/var/log/gitlab'
    - '/srv/gitlab/data:/var/opt/gitlab'

虚拟机,我选了两个网卡:NAT + 桥接网络
NAT,用来做端口映射
桥接网络,用来做宿主机和虚拟机连接

# 查看虚拟机ip地址
ip address

这里圈出来的ipdocker-compose.yml中的ip对应
查看虚拟机ip地址

关于虚拟机不同的网络模式的作用,具体可以百度一下
设置网络模式这一块,一开始也卡了我很久,现在也还是一知半解的,就不误导大家了。
可以参考这篇文章:VMware虚拟机三种网络模式详解

.
5. 启动Gitlab

docker-compose up -d

# 查看container的状态,从starting,到health时,就启动好了
docker ps

starting
在这里插入图片描述
6. 虚拟机的端口映射
打开VirtualBox,找到对应的虚拟机,根据截图中的数字步骤执行。
将Gitlab用到的80端口映射出来
在这里插入图片描述 7. 回到宿主机,输入虚拟机的ip地址访问Gitlab
Gitlab主页8. 这里要求修改root账号的密码,初始化root的密码后,就可以真正的进到主页了。
剩下的就是平时我们做的创建项目、pull & push code的操作了。
Gitlab项目主页

至此,从虚拟机docker网络设置gitlab 就结束了。
折腾了一天多终于搞好了。花费的时间主要是,一开始想要用公司的电脑折腾的,碰巧这周的VPN很不稳定,经常断线。又重新用回自己的电脑折腾。其二是在网络设置那一块花费了不少的时间。
接下来会把Gitlab的CI/CD、Gitlab CI/CD的执行情况(Monitoring)、SonarQube的步骤给完善了,尽量的重现项目组中:代码管理、自动化部署、代码质量监控的流程。

这篇文章主要也是作为自己学习过程中的记录,当中肯定存在多余、错误的步骤,还望各位大佬指导批评。

其他

从VirtualBox到Docker到Gitlab的安装
Gitlab CICD官网翻译
MySQL安装 & 使用
JDK安装 & 版本查看
中间件Solace pubsub+安装时抛time out
Upsource安装 & 使用
Docker安装Gitlab runner
Docker部署Gitlab,ssh端口不用22的解决方法
Docker部署Gitlab,http端口不用80的解决方法
Gitlab runner的注册 & 使用
gitlab-monitor 配置和使用
Upsource集成Gitlab的身份验证

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值