使用 Mac Mini 运行 Gitlab-CE

之前组了一台 E5 的服务器放在家里自用,但是夏天来了,服务器的温度也逐渐变高。正好设备从 Mac Mini 换到了 MacBook Air,于是就想着把 M1 的 MacMini 拿来当作服务器,这样功耗低,温度低,性能也比之前的好~

在 Mac 图形界面上,通过正常的方式安装 Docker Desktop,这一步不再赘述。

P.S. 可以通过在 访达>网络 中找到你的设备,直接开启远程桌面,还是相当丝滑

在远程 Mac 的设置中开启 SSH 功能,记得也勾选上对应的文件共享 (https://support.apple.com/zh-cn/guide/mac-help/mchlp1066/mac)

接着,在本地终端中连接即可

这里输入密码时和 Linux 系统一样,是不会显示的

我外挂了一块 1T 的硬盘,用作数据盘。在 Mac 的磁盘工具中给他格式化之后,通过命令行进去,编辑一个 docker-compose 文件

这个文件可以指定一系列 Docker 容器按一定的顺序启停,但是这里我们主要是为了编辑配置方便,否则每次启动都得使用一大串指令

首先我按照官方的配置文件粘贴修改,发现无法开启

发现这个鬼镜像似乎是只支持 x86 的 CPU,在网上搜索后,找到了 Arm64 版本的镜像

https://github.com/zengxs/gitlab-arm64

这里给出我的配置文件:


services:
  gitlab:
    image: zengxs/gitlab:latest
    container_name: gitlab
    restart: always
    hostname: 'gitlab.xxxx.xyz'
    environment:
      - GITLAB_HOME=/Volumes/Data/Gitlab
      - GITLAB_OMNIBUS_CONFIG="external_url 'https://gitlab.xxxx.xyz:12332';"
    ports:
      - '80:80'
      - '443:443'
      - '22:22'
    volumes:
      - '$GITLAB_HOME/config:/etc/gitlab'
      - '$GITLAB_HOME/logs:/var/log/gitlab'
      - '$GITLAB_HOME/data:/var/opt/gitlab'
    shm_size: '256m'

好像容器并不认配置中的环境变量,所以需要在运行前手动 export 一下

export GITLAB_HOME=/Volumes/Data/Gitlab
docker compose up -d

发现端口占用,再进入配置文件修改一下端口即可

再次启动就能看见启动成功了~

这里注意的是,我这里花了三分钟的时间启动,其实是因为桌面上这时候会跳出授权窗口,问是否允许 Docker 访问外置硬盘的内容,点击允许后就 OK 了

等待启动完成,并且配置反向代理(到之前配置中写的地址。如果你是使用的默认的 0.0.0.0 和 http://localhost 就不用配置)就可以访问了。

要获取初始的密码,打开访达,回到你刚刚指定的 GITLAB_HOME 文件夹

打开 config 文件夹,就能看见这样的文件

现在可以用 root 账号和文件中的密码登录。

登录后,可以来到这个位置更改登录信息

记得在下面一起把密码改了,不然这么长确实不好记

保存后会被登出,重新登录即可


迁移数据

现在已经跑起来了,需要从以前的 Gitlab 实例中恢复数据

以下方法还会恢复你的配置文件,如果想只迁移存储库,请按这篇文章来:https://docs.gitlab.com/user/project/import/

SSH 登录旧服务器,执行备份指令

将备份文件传输到新服务器

把文件丢进新服务器的备份文件夹

执行备份指令

不出所料的炸了,原因是版本不一致,我们需要手动切换到一样的版本

编辑 compose 文件,然后运行

接着重新运行恢复指令

然后就等着启动了

成功

chevron_left

Leave a comment

您的邮箱地址不会被公开。 必填项已用 * 标注

Comment
Name
Email
Website