推薦官方文檔
https://docs.gitlab.com/17.0/ee/install/docker.html
我使用的是docker run的方式,官方文檔后面有docker-compose、swarm、k8s的部署文檔
版本說明
1:可以部署gitlab-ce社區版和gitlab-ee企業版,然后,鑒于是個人使用,就選擇了社區版,至于ce和ee的區別,可以網上搜索一下,很容易找到回答。
2:gitlab幾個大版本14、15、16、17,其中,從15版本開始,界面有所修改,將用戶挪到了左側,個人感覺很不習慣,所以還是選擇了舊UI:14版本,使用的14版的最新版:
https://hub.docker.com/r/gitlab/gitlab-ce/tags?page=&page_size=&ordering=&name=14.
Docker部署
我的部署版本:14.10.5
部署命令:
docker run -itd \--hostname git.*****.cn \--publish 15443:443 --publish 15080:80 --publish 15022:22 \--name gitlab14 \--restart always \--volume /Users/suwei/Downloads/tmp/config:/etc/gitlab \--volume /Users/suwei/Downloads/tmp/logs:/var/log/gitlab \--volume /Users/suwei/Downloads/tmp/data:/var/opt/gitlab \gitlab/gitlab-ce:14.10.5-ce.0# 初次啟動會慢些,初始化很多東西
# 重啟會快點,但總體,我還是感覺慢....
配置修改
# 進入容器:或者修改掛載文件 ***/config/gitlab.rb
docker exec -it gitlab14 bash# 修改
vi /etc/gitlab/gitlab.rb
# 修改如下內容
gitlab_rails['gitlab_shell_ssh_port'] = 15022 # 修改成你的22端口的映射端口
# 可選路由配置
external_url 'git.*****.cn' # 默認'GENERATED_EXTERNAL_URL',如果你有域名,可不用修改,如果用ip,需要修改成ip地址# 然后,重啟gitlab即可
docker restart gitlab14
說明:external_url 配置的地址,會在clone項目代碼的鏈接里體現,如圖:
初始root密碼修改
# 進入容器
docker exec -it gitlab14 bash# 執行:
# 進入控制臺
gitlab-rails console -e production
# 查詢id為1的用戶,id為1的用戶是超級管理員
user = User.where(id:1).first
# 修改密碼
user.password='新密碼'
user.password_confirmation='新密碼' # 可忽略
# 保存
user.save!
# 退出
quit
exit
現在你就可以用root賬號,和你的新密碼登錄了。
域名及地址Nginx轉發
1:如果你沒有域名,直接瀏覽器訪問你的git,那么現在就可以正常使用。
2:如果你有域名,且你的服務器對公網完全開放的,那么你也可以正常使用了
3:如果你的gitlab服務器在內網,你有一個公網服務器做跳板機,域名解析到跳板機服務器上,那么你可能需要做一些操作,才能使用 ssh clone。見下文
https://blog.csdn.net/GodDavide/article/details/139182821