iT邦幫忙

2023 iThome 鐵人賽

DAY 28
0
DevOps

搞定Docker網路系列 第 28

Drone的網路-Drone+gitlab是否可以不用ip溝通?

  • 分享至 

  • xImage
  •  

先說結論,只有sonarqube跟maven之間確實沒有用ip溝通之外,其他跟gitlab有關的地方,都要用ip。

因為gitlab跟drone之間的認證是會利用external url來溝通,需要到host這邊存取,所以這邊發現有幾個地方會需要用ip:

  1. drone的gitlab環境變數,要使用gitlab的external_url,以及自己宣告的host也要用ip(因為要跟gitlab溝通)

environment:
- DRONE_GITLAB_SERVER=http://172.18.0.2
- DRONE_SERVER_HOST=172.18.0.4

  1. drone runner的drone rpc host環境變數,當然server都宣到為ip,runner也只能用ip抓

-- DRONE_RPC_HOST=172.18.0.4

  1. gitlab的config/gitlab.rb的external_uri宣告

  1. gitlab application的Callback URL

這幾個地方,源頭在gitlab external_url,測試過0.0.0.0或gitlab這個名稱,都無法正常運作,所以就造成以上四個地方確實無法由網域名稱來溝通了。

這部份只能靠host跟container共用hosts或跟dns註冊才有辦法解決了。


上一篇
Drone的網路-CICD平台+compose yaml腳本
下一篇
Drone的網路-Drone+gitlab是否可以不用ip溝通?其實可以
系列文
搞定Docker網路31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言