本站教程收集整理的这篇文章主要介绍了node.js-docker swarm服务中的Nodejs应用程序,更新无效 ,本站教程本站觉得挺不错的,现在分享给大家,也给大家做个参考。
简短如何在docker swarm中更新复制的nodejs应用程序?
预期的行为:触发更新后,服务将接收某种形式的信号,例如:SIGINT或SIGTERM
实际发生的事情:什么都没有…没有信号,没有更新的服务.我必须删除该服务,然后使用更新的图像再次创建它.
我正在使用dockerode更新服务. Docker API的文档of the subject in question已损坏(例如,一个子菜单无法展开子菜单:updateConfig)…使得很难知道我是否缺少任何其他规范.
如果我运行命令:docker service update发生预期的行为.
最佳答案
每次更新时,Forceupdate标志必须增加一…,以便在不对映像进行版本控制时进行更新.
const
serviceOptions = { ... },service = this.docker.getservice(serviceName),serviceInspected = await this.serviceInspector.inspectservice(serviceName)
serviceOptions.registryAuthFrom = 'spec'
// if we do not specify the correct version,we can not update the service
serviceOptions.version = 便宜美国vps serviceInspected.Version.Index
// it's not documented by docker that we need to increase this force update flag by one,each time we attempt to update...
serviceOptions.TaskTemplate.Forceupdate = serviceInspected.Spec.TaskTemplate.Forceupdate + 1
const response = await service.update(serviceOptions)
response.output.Warnings && this.log.info(data.output.Warnings)
仍然无法从容器中记录SIGTERM信号,但至少现在我可以更新服务了
本站总结
以上是本站教程为你收集整理的node.js-docker swarm服务中的Nodejs应用程序,更新无效 全部内容,希望文章能够帮你解决node.js-docker swarm服务中的Nodejs应用程序,更新无效 所遇到的程序开发问题。
如果觉得本站教程网站内容还不错,欢迎将本站教程推荐给好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。