一、前言
本来goproxy.cn
是很好用的,但是公司目前只能使用goproxy.baidu.com
,这个大部分用的时候都没有问题,但是发现偶尔有几个仓库死活拉不下来,但是换成goproxy.cn
确实实在在能拉下来。所以想着为什么不搭建一个公司自己的goproxy
呢?在解决这个问题的过程当中,却衍生出了另外一个想法:为什么不用公司自己的gitlab
作为我们自己开发的包的仓库呢?本来以为这是个比较麻烦的工作,最后发现还挺简单的,该文就是用来记录整个过程。
二、内容
-
准备gitlab环境
docker
运行gitlab
镜像,注意必须给docker``4G
以上内存,cpu
也设置高点,最好4c
,这样能操作流畅些,不然可能遇到gitlab
页面访问不进去:docker run -d -p 443:443 -p 80:80 -p 222:22 --name gitlab --restart always -v ~/config:/etc/gitlab gitlab/gitlab-ce
然后修改
gitlab
的配置文件,才能正常访问gitlab
页面:-
先找到自己主机的
ip
地址,我这里就是192.168.2.5
-
修改主机
host
,添加一条DNS
记录:192.168.2.5 gitlab.com
-
修改
gitlab
配置文件vim ~/config/gitlab.rb
然后修改
external_url 'http://gitlab.com' ... gitlab_rails['gitlab_shell_ssh_port'] = 222 ... gitlab_rails['gitlab_ssh_host'] = '192.168.2.5'
-
最终重启容器
docker restart gitlab
-
浏览器访问:
http://gitlab.com
,如果机器性能不够的话,可能要等一会儿才行。当发现页面整个为空,可以换个浏览器访问看看,我就遇着google
访问不行,换成safari
可以。 -
你可能进去的是这个页面,发现此时你并不知道密码,如果不是这个页面的话,就不用继续往下看
准备gitlab环境
了。下面要做的是重置gitlab
用户名密码。-
首先进入容器:
docker exec -it gitlab /bin/bash
-
然后重置
root
的密码,这里我设置为admin123
# gitlab-rails console -------------------------------------------------------------------------------- Ruby: ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-linux] GitLab: 14.0.2 (bac4ee4a9e2) FOSS GitLab Shell: 13.19.0 PostgreSQL: 12.6 Loading production environment (Rails 6.1.3.2) -------------------------------------------------------------------------------- irb(main):001:0>u= User.where(id: 1).first => #<User id:1 @root> irb(main):001:0>u.password='admin123' => "admin123" irb
-
-