1. 程式人生 > >一步教你Docker安裝搭建GitLab倉庫(用來做SpringCloudConfig配置中心)

一步教你Docker安裝搭建GitLab倉庫(用來做SpringCloudConfig配置中心)

Docker 安裝 Git(以下在Centos7上操作,前提是已經安裝過docker)

  a:拉取官方的映象
  #docker pull gitlab/gitlab-ce:latest
  b:執行容器
  #docker run --detach \
    --publish 8443:443 --publish 8080:80 --publish 2222:22 \
    --name gitlab \
    --restart always \
    --volume /srv/gitlab/config:/etc/gitlab \
    --volume /srv/gitlab/gitlab/logs:/var/log/gitlab \
    --volume /srv/gitlab/gitlab/data:/var/opt/gitlab \
    gitlab/gitlab-ce:latest
    --hostname
    指定容器中繫結的域名,會在建立映象倉庫的時候使用到
    --publish
    埠對映,冒號前面是宿主機埠,後面是容器expose出的埠
    --volume
    volume 對映,冒號前面是宿主機的一個檔案路徑,後面是容器中的檔案路徑
  c:訪問Git:http://安裝的所在IP:8080
特別注意:
    讓gitlab容器執行起來是沒有問題的,但是當在gitlab上建立專案的時候,生成專案的URL訪問地址是按容器的hostname來生成的,即容器的id。
    作為gitlab伺服器,當然是需要一個固定的URL訪問地址,於是需要配置gitlab.rb(宿主機上的路徑為:/data/gitlab/config/gitlab.rb)配置檔案裡面的引數
    
    1.進入容器
    # docker exec -it gitlab /bin/bash
    2.編輯檔案
    # vi /etc/gitlab/gitlab.rb
    3.修改
    # 配置http協議所使用的訪問地址
    external_url 'http://10.200.0.100:8080'(記得修改為你自己的ip埠)
    nginx['listen_port'] = 80
    # 配置ssh協議所使用的訪問地址和埠
    gitlab_rails['gitlab_ssh_host'] = '10.200.0.100'(記得修改為你自己的ip)
    gitlab_rails['gitlab_shell_ssh_port'] = 2222
    備註:以上的埠是對應的publish的埠;
    
    4.重啟配置生效
    gitlab-ctl reconfigure 
    gitlab-ctl restart 
    docker restart <container name or id>
------------------------------------------------------------------
    關於修改Git管理員密碼
    重新置管理員root密碼
        進入gitlab容器裡面
        docker exec -it <container name or id>  /bin/bash
        # gitlab-rails console production
        查詢uid為1的使用者
        > user = User.where(id: 1).first 
        配置密碼為12345678
        > user.password=12345678  
        > user.password_confirmation=12345678
        儲存
        > user.save! 
        退出
        > quit