在DockerHub发布Dubbo Admin镜像
?
Dubbo Admin是Dubbo的服務治理中心,提供了大量日常運維所需的服務治理、配置管理等功能。
Dubbo Admin同時包含了前端代碼和后端代碼,如果用戶需要自己下載源碼并編譯打包,需要花費一定時間。 特別是對于一些希望快速調研和試用Dubbo Admin的用戶,這種流程的體驗并不是很好。
Docker是一個開源的應用容器引擎,讓開發者可以打包應用以及依賴包到一個可移植的鏡像中,社區對于提供Dubbo Admin鏡像的呼聲較高。 Docker官方維護了一個公共倉庫DockerHub,該倉庫還有很多國內鏡像,訪問速度快,將Dubbo Admin鏡像發布到DockerHub是一個較好的選擇。
DockerHub賬號申請
要在DockerHub上發布鏡像,自然需要對應的賬號。 而DockerHub有兩種常見賬號,一種是面向個人的,一種是面向組織的。Apache在DockerHub上有一個組織賬號[1]。 自然我們首選是發布在組織賬號下。
DockerHub對于組織賬號的管理是基于組的,也就是一個組織賬號下有多個組,每個組有不同的成員,而一個組可以管理一個或者多個鏡像。
所以要做的第一步就是申請權限,這個需要提一個issue給Apache Infrastructure團隊,申請DockerHub的鏡像倉庫和組權限。 目前鏡像和組已經申請好了,只需要申請組的權限就行了,可以參考之前的申請[2]。
申請完權限以后使用Apache賬號登陸應該就可以看到對應的鏡像和配置選項了。
添加新的構建規則
發布鏡像到DockerHub有兩種辦法,一種是本地構建好鏡像以后遠程push到DockerHub,另外一種是提供Dockerfile并借助DockerHub提供的構建功能直接在DockerHub構建。 后者明顯操作性和便捷性要好很多,目前Dubbo Admin的鏡像也是這樣構建發布的。
當Dubbo Admin有新版本發布以后,需要在項目的docker目錄新增一個Dockerfile文件,可以參考目前0.1.0版本的Dockerfile[3],其中的配置根據具體的版本可能有細微差別,但是大致上是一致的。
在添加了Dockerfile之后,進入DockerHub對應的管理界面新增Build Rules
根據實際情況填寫即可。這里需要注意兩點:
- latest 版本要和最新的版本配置一致
- 不要勾選Autobuild
勾選Autobuild會導致每次git提交都會觸發自動構建,但是由于Dubbo Admin不提供snapshot的Docker鏡像,所以只有發布新版本的時候才需要構建發布。
修改以后點Save,然后手動觸發構建即可。
總結
總的來說DockerHub上發布鏡像的步驟并不復雜,如果已經申請過權限的話,操作起來是很流暢的。
另外DockerHub的構建是需要排隊的,有時候會遇到長時間沒有開始構建的情況,需要耐心等待。
https://hub.docker.com/r/apache???
https://issues.apache.org/jira/browse/INFRA-18167???
https://github.com/apache/dubbo-admin/blob/develop/docker/0.1.0/Dockerfile???
原文:http://dubbo.apache.org/zh-cn/blog/build-new-docker-image-in-dockerhub.html
總結
以上是生活随笔為你收集整理的在DockerHub发布Dubbo Admin镜像的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GraphQL引入依赖maven仓库配置
- 下一篇: 研究 Dubbo 网卡地址注册时的一点思