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 小时后都会更新一次。登陆以后,设置一下密码,就不会更新了。