对于已存在的镜像,将其部署到服务器中并开始对外服务,即是它的职责,而咱们要作的即是帮助它完成职责,前两个应用环节都已产生了相应的镜像,在这一环节,将完成服务部署到容器集群的工做,对于这一过程,实际执行中有不少种方式,毕竟一山比一山高,整个过程比较简单,镜像以任务形式下发到各容器主机便可,本次部署过程较为简单,只做为示例来说,无需太多复杂过程,更强调过程实现。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,望技术有成后能回来看见本身的脚步