Docker 安裝Gitlab-ce,打造私有Git服務
阿新 • • 發佈:2021-08-31
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