Docker 安装 GitLab

由于 GitLab 官网上下载提供的全是 x86 架构的,因此需要安装 ARM 的就需要自己通过源码编译,编译的过程也比较繁琐,这里使用的则为 Docker 镜像安装,通过 Docker 使用别人已经编译好的镜像即可。

gitlab官方地址:https://gitlab.cn/

Docker 拉取 Gitlab

电脑上需要安装 Docker 以后,执行如下操作:

电脑至少需要 4G 内存

docker pull yrzr/gitlab-ce-arm64v8

Docker 运行 GitLab 镜像

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

如上为端口占用的解决,如果遇到其他问题,就需要对相关问题进行解决。

gitlab 登陆

# 进入 docker 容器中,查看当前的 gitlab 的初始密码docker exec -it gitlab-ce[对应的docker容器名称或者 docker 容器 id] /bin/bash# gitlab 的初始账号为 root# 进入到 docker 容器中以后,输入如下指令cat /etc/gitlab/initial_root_password

gitlab 的 root 管理员密码每 24 小时后都会更新一次。登陆以后,设置一下密码,就不会更新了。