對於已存在的鏡像,將其部署到服務器中並開始對外服務,即是它的職責,而咱們要作的即是幫助它完成職責,前兩個應用環節都已產生了相應的鏡像,在這一環節,將完成服務部署到容器集羣的工做,對於這一過程,實際執行中有不少種方式,畢竟一山比一山高,整個過程比較簡單,鏡像以任務形式下發到各容器主機便可,本次部署過程較爲簡單,只做爲示例來說,無需太多複雜過程,更強調過程實現。html
在以前的一篇文章:約定Service構建方式(https://www.cnblogs.com/CKExp/p/9940469.html)中提到了幾種部署方式,對於我來說,比較喜歡"藉助工具手動交付"這種形式,一來,無須要面對命令行,藉助工具去調用Docker Api,這樣對於不太熟練使用的人也能夠快速完成服務部署。java
這裏涉及到Portainer工具的安裝,以及Portainer集羣管理的安裝:web
一、單節點安裝:Manager節點上安裝Portainer,Swarm Cluster中沒有Worker節點時直接使用這個便可,訪問9000端口,配置帳號密碼便可管理。docker
$ docker volume create portainer_data $ docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
二、集羣模式下安裝,採用docker stack形式,完成全部節點的安裝,這樣一來能夠在Manager節點中統一管理整個集羣(推薦)服務器
$ curl -L https://downloads.portainer.io/portainer-agent-stack.yml -o portainer-agent-stack.yml $ docker stack deploy --compose-file=portainer-agent-stack.yml portainer
Portainer文檔:https://portainer.readthedocs.io/en/stable/index.html微信
配置鏡像倉庫地址:選中左側菜單:Registries->Add registry選擇Custom registry,添加一個鏡像倉庫地址,本次我使用的是騰訊雲鏡像倉庫,所以倉庫地址填寫騰訊雲倉庫地址,同時使用身份認證,打開Authentication選項,輸入騰訊雲提供的帳號密碼:curl
騰訊雲鏡像倉庫教程:https://cloud.tencent.com/document/product/457/9117工具
一、建立Service學習
左側菜單選擇Service,點擊增長一個Service,來開始服務部署工做。url
而後填寫一系列信息,如服務名稱、鏡像名稱及版本號、選擇鏡像倉庫地址,在Scheduling mode處若是選擇Relicated則填寫實例數量,可用於動態控制,若是選擇Global則一臺容器主機生成一個容器,填寫對外端口(推薦填寫),不填則會被默認分配端口,開啓鉤子,當鏡像版本進行更新後,經過生成的Url地址能夠控制自動更新服務(重點),鏡像倉庫大多提供觸發器功能,經過鏡像倉庫中版本的更新,觸發服務對新版本的獲取從而達到持續部署功能,在騰訊雲鏡像倉庫中提供了這一功能,經過webhook,能夠幫咱們實現持續部署,所以,當開啓了鉤子功能後,從代碼的更改到鏡像的更新再到服務的更新這一整個環節便能很流暢的進行了,固然這個前提是,須要容器集羣在騰訊雲中部署,若是是混合雲等或是沒有在騰訊雲中創建容器集羣,則這一功能是用不了的,只能另想其它辦法觸發服務更新。
建立完畢,服務部署便完成了,點擊左側Swarm菜單能夠查看集羣及服務運行狀況。經過其它操做,如動態擴容、版本更新、版本回滾等操做,完成對服務的控制。
二、使用WebHook完成鏡像更新則立馬更新服務
本次我使用騰訊提供的TencentHub中的WebHook功能,騰訊雲鏡像倉庫中的WebHook僅限把服務部署到騰訊雲容器服務中,有點侷限性,所以將鏡像倉庫轉移到TencentHub中,在Service建立完畢後,獲得提供的WebHook回調地址
而後在TencentHub中新增長一個WebHook通知,填寫相應的信息和回調地址,選擇鏡像更新時則觸發回調,即可以達到鏡像更新則服務更新功能了
至此,服務部署到容器集羣中算是完成了,操做過程較爲簡單,或許對於現有出色的生成流水線,如Azure DevOps等來說,高不可攀,算是完成了必定的功能,旨在掌握整個生成流水線的過程,重在學習!
本文地址:http://www.javashuo.com/article/p-oykcajrv-hu.html
歡迎關注微信訂閱號,有新的文章將同步到訂閱號中
2018-12-23,望技術有成後能回來看見本身的腳步