如何在M1的Mac上搭建gitlab

8,337 阅读4分钟

如果此篇对您有一丝丝帮助,帮忙

自我描述

在两年前就想在自己的电脑上玩gitlab了,奈何当年的电脑配置太低,玩gitlab伤不起,今年在媳妇全资资助下,换了一台10核 16G的配置,终于玩得起了。但是这个是M1处理器,采用的是ARM架构,教程和资源不多,大多是x86的,因此踩了许多坑,这里就记录一下我搭建gitlab的成功记吧

环境要求

  1. gitlab官网说了,建议至少4GB的RAM(最低要求),因此你的电脑必须在8g以上,其中还有其他软件需要消耗内存
  2. 需要搭建一个虚拟 CentOS 操作系统,并且要求系统为64位、Linux系统内核版本为 3.8以上,这里选择的是Centos7 arm64 版本
  3. docker
  4. gitlab-ce版本的镜像(社区版,不收费用的) yrzr/gitlab-ce-arm64v8

不建议直接在Mac上安装各种软件,搭建各种学习环境,一不小心你可能会伤害无辜,造成电脑上会出现许多奇奇怪怪的问题。因此这里建议搭建一个虚拟机,在里面任意玩耍,对宿主机没什么影响。

为什么会选择docker安装gitlab呢?主要是因为我直接从官网上下载一个gitlab-ce版本入口都非常难找,各种配置啥的,太繁琐了。把这些繁琐的交给docker,爽歪歪,分分钟钟就能搭建一个gitlab站了

那话不多说,咱们一步步来安装,如果中间有哪些环节你已经安装了,可以直接跳过去

安装 虚拟软件vmware

1. 下载

2. 安装

下载后直接安装即可,视频教程:【虚拟机】VMware Fusion for M1 预览版初体验

安装 CentOS7 ARM64 的虚拟机

1. 镜像下载

CentOS-7-aarch64-08191738.mpg 提取码: 1qaz

2. 安装

  • 将下载的CentOS-7-aarch64-08191738.mpg,更改后缀mpg → iso,即 CentOS-7-aarch64-08191738.iso
  • 打开 vmware 新建 依次按照图片操作
    • 选择从光盘或影响中安装 image.png 将刚刚下载的镜像拖入到vmware中 image.png image.png 这里没找到对应的操作系统,选择其他 → 其他64位 ARM image.png 修改CentOS7 操作系统的名称 image.png image.png 配置处理器和内存 image.png 分配4核,5G的内存 image.png 配置硬盘大小 image.png 给一个40G image.png image.png 关闭配置后开始运行 image.png 选择安装 CentOS 7 ,并回车键 image.png 选择伟大祖的语言 中文简体 image.png 设置有操作界面 image.png 设置根密码 image.png 设置用户名称和密码 image.png 设置系统安装目的地和磁盘划分 image.png 大概这么划分
      /boot/efi 500MB
      /boot 1G
      swap 4G
      / 剩余的 34.53G
      image.png image.png image.png image.png 选择接受更改 image.png 开始安装 image.png image.png 安装的时候需要等待一会,重启的时候,默默的不要操作,等它自动运行 image.png image.png 接受许可证 image.png 安装ok了,进入操作系统内,选择一下语言配置接口 image.png image.png

安装 dokcer

1. 下载并安装

  • 打开终端,并开启root权限,即 su image.png image.png

  • 安装需要的软件包

    • yum -y install gcc image.png image.png
    • yum -y install gcc-c++ image.png image.png
    • yum install -y yum-utils image.png
    • 设置stable镜像仓库

    注意千万别跟官网设置镜像仓库,那个国外的水土不服,会出现许多你意想不到的事

    使用里的镜像仓库 yum-config-manager --add-repo mirrors.aliyun.com/docker-ce/l… image.png

    • 更新yum软件包索引 yum makecache fast image.png
    • 安装DOCKER CE yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin image.png image.png image.png image.png 此时 docker-ce已经安装好了,
    • 启动docker systemctl start docker
    • 设置开启启动 systemctl enable docker image.png

2. 阿里云镜像加速

  • 获得加速器地址连接

安装 gitlab

1. 下载 gitlab-ce-arm64v8 镜像

2. 创建容器

docker run \
  --detach \
  --restart always \
  --name gitlab-ce \
  --privileged \
  --memory 4096M \
  --publish 8822:22 \
  --publish 8880:80 \
  --publish 8443:443 \
  --hostname zack.gitlab.com \
  --env GITLAB_OMNIBUS_CONFIG=" \
    nginx['redirect_http_to_https'] = true; "\
  --volume /srv/gitlab-ce/conf:/etc/gitlab:z \
  --volume /srv/gitlab-ce/logs:/var/log/gitlab:z \
  --volume /srv/gitlab-ce/data:/var/opt/gitlab:z \
  yrzr/gitlab-ce-arm64v8:latest

image.png 上面的操作代表已经容器已经创建成功了

3. 访问已经搭建好的gitlab

两个方式访问,在宿主机内直接用容器的IP访问,另一个用宿主机IP访问

a. 在宿主机内直接用容器的IP访问
  • 查看容器的IP image.png
  • 在宿主机内访问 172.17.0.2:80 image.png
b. 用宿主机IP访问
  • 查看宿主机的IP image.png
  • 在宿主机内访问 192.168.168.128:8880 image.png

4. 修改管理员密码

  • 进入服务器执行如下命令,进入gitlab指令控制台 gitlab-rails console image.png image.png
  • 输入如下指令回车,获取root用户变量 user = User.where(id: 1).first image.png
  • 输入重置变量密码属性,回车 user.password = '12345678' user.password = '12345678' image.png
  • 保存 user.save image.png
  • 重新访问一下
    用户:root
    密码:12345678
    image.png

终于完成了,可以愉快的玩耍啦

💃🏻💃🏻💃🏻
🍺🍺🍺