Docker 安装Gitlab-ce,打造私有Git服务
1、拉取镜像文件
docker pull gitlab/gitlab-ce:14.1.0-ce.0
2、启动容器
docker run --restart=always \ -p 1443:443 -p 18080:18080 \ --name mygitlab-ce \ -v ~/gitlab/gitlab-config:/etc/gitlab \ -v ~/gitlab/gitlab-log:/var/log/gitlab \ -v ~/gitlab/gitlab-data:/var/opt/gitlab \ -d gitlab/gitlab-ce:14.1.0-ce.0
3、配置Gitlab地址
vi ~/gitlab/gitlab-config/gitlab.rb ;修改文件中external_url信息 external_url "http://IP:18080" ;重启Gitlab docker restart mygitlab-ce ;查看Log,等待重启完成 docker logs -f gitlab-ce
4、获取Root密码
;进入容器 docker exec -it mygitlab-ce bash # 执行下面命令启动一个 Ruby on Rails console,等待 console加载完成 root@44b33d22e70f:/# gitlab-rails console -e production ------------------------------------------------------------------------------------- GitLab: 11.1.4 (63daf37) GitLab Shell: 7.1.4 postgresql: 9.6.8 ------------------------------------------------------------------------------------- Loading production environment (Rails 4.2.10) irb(main):001:0> user = User.where(id: 1).first => #<User id:1 @root> irb(main):002:0> user.password="12345678" #设置密码 => "12345678" irb(main):003:0> user.password_confirmation="12345678" #确认密码 => "12345678" irb(main):004:0> user.save! # 保存修改 Enqueued ActionMailer::DeliveryJob (Job ID: 38850b0d-7690-47b7-b5c9-9cf975bae8fd) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", gid://gitlab/User/1 => true irb(main):005:0> quit #退出 Ruby on Rails console
5、恢复备份数据(可跳过)
1. 修改这个文件 vi /var/opt/gitlab/postgresql/data/postgresql.conf 找到listen_addresses = ” 改为listen_addresses = ‘*’ 2. 修改vi /var/opt/gitlab/postgresql/data/pg_hba.conf 在这个文件最后面加入 local all all trust host all all 127.0.0.1/32 trust host all all ::1/128 trust 3. 重启gitlab生效 gitlab-ctl restart 4. 进入postgresql命令行 cd /opt/gitlab/embedded/bin su gitlab-psql ./psql -h 127.0.0.1 gitlabhq_production 5. 执行修改gitlab用户为超级权限 ALTER USER gitlab WITH SUPERUSER; 退出 \q 6.停止一下服务 gitlab-ctl stop unicorn gitlab-ctl stop sidekiq 7.修改备份文件及备份目录权限 chown -R git:git /var/opt/gitlab/backups/1629939755_2021_08_26_14.1.0_gitlab_backup.tar chown -R git:git /var/opt/gitlab/backups 8.恢复备份 gitlab-rake gitlab:backup:restore BACKUP=1629939755_2021_08_26_14.1.0 9.重启服务 sudo gitlab-ctl start
6、重启容器
docker restart mygitlab-ce