由于 GitLab 官网上下载提供的全是 x86 架构的,因此需要安装 ARM 的就需要自己通过源码编译,编译的过程也比较繁琐,这里使用的则为 Docker 镜像安装,通过 Docker 使用别人已经编译好的镜像即可。
gitlab官方地址:https://gitlab.cn/
电脑上需要安装 Docker 以后,执行如下操作:
电脑至少需要 4G 内存
docker pull yrzr/gitlab-ce-arm64v8
docker run \
  --detach \
  --restart always \
  --name gitlab-ce \
  --privileged \
  --memory 4096M \
  --publish 22:22 \
  --publish 80:80 \
  --publish 443:443 \
  --hostname xxx.xxx.xxx.xxx \
  --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
 
运行上述指令的过程中,容易出现 22 端口的错误,原因是如果使用 xshell 等远程连接的ssh软件,默认走的是 22 的端口,此时会出现一个端口占用的情况。
关于访问,将 hostname 修改 ip 地址即可,或者在 DNS 中配置域名信息。
解决如下:
# 查询所有的镜像
docker ps -a
# 此时会看到一个 gitlab-ce 的容器是没有启动的状态
# 删除 gitlab-ce 容器
docker rm gitlab-ce
# 再次运行时,删除开放的 22 端口
docker run \
  --detach \
  --restart always \
  --name gitlab-ce \
  --privileged \
  --memory 4096M \
  --publish 80:80 \
  --publish 443:443 \
  --hostname xxx.xxx.xxx.xxx \
  --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
 
如上为端口占用的解决,如果遇到其他问题,就需要对相关问题进行解决。
# 进入 docker 容器中,查看当前的 gitlab 的初始密码 docker exec -it gitlab-ce[对应的docker容器名称或者 docker 容器 id] /bin/bash # gitlab 的初始账号为 root # 进入到 docker 容器中以后,输入如下指令 cat /etc/gitlab/initial_root_password
gitlab 的 root 管理员密码每 24 小时后都会更新一次。登陆以后,设置一下密码,就不会更新了。