当前位置: 首页 > 面试题库 >

使用Jenkins将更改部署到Docker容器

叶举
2023-03-14
问题内容

Docker新手在这里。

我已经设置了docker容器来运行一个简单的Node JS应用程序。

假设我有一个新版本的应用程序(例如 1.1 ),必须由Jenkins CI进行部署。在这里,我对Jenkins CI到底应该做什么应该有所了解:

  • 应该关闭并删除旧容器( 1.0 )并启动新实例 1.1 吗?

要么

  • 应该进入当前运行的容器并仅更新代码吗?

问题答案:

使用CI / CD工具(如Jenkins)的理想做法如下:

1)在Jenkins中进行一项工作(最好是在Jenkins管道工作中),该工作应从SCM存储库中检出代码,然后对该代码运行定义的单元测试和隔离的集成测试

2)然后,该工作将根据您的代码创建映像,并对其进行正确标记并将其存储在所需的docker存储库中。

3)然后,作业应转到您的Docker主机并拉出新的Docker映像,停止旧容器并随后运行新容器。

4)作为可选步骤,您可以在运行docker容器的主机中设置cron来管理旧的孤立映像和容器。



 类似资料:
  • 我使用docker-composing创建了一个Docker容器。在我的本地环境中,我能够毫无问题地启动我的应用程序。 现在,我想将所有docker容器部署到AWS EC2(ECS)。在阅读了ECS文档后,我发现我们可以使用相同的docker compose在ECS中使用ECS-CLI进行部署。但ECS-CLI目前不适用于windows实例。因此,现在我不知道如何使用docker compose使

  • 问题内容: 我正在尝试完成有关如何在Azure域/环境中正确使用Windows容器的架构研究,其中我必须将Dot Net Core Web API应用程序容器化并将该容器部署到Azure容器服务中 这是我做的事情 我确实在Azure门户中创建了Azure容器服务帐户/域/虚拟机 此外,我确实使用已安装Docker的容器为Windows Server 2016创建了另一个虚拟机 在Windows S

  • 我有一个Spring Boot Java应用程序,我已经按照教程进行了设置,以便构建一个WAR。我正试图使用Jenkins将这个WAR文件部署到远程Tomcat 7服务器。当我告诉Jenkins构建和部署应用程序时,登录Jenkins表明一切都是成功的。如果我登录到托管Tomcat的远程服务器,我可以看到WAR被复制到服务器。如果我查看日志文件,它会显示以下内容: 如果我进入tomcat管理器应用

  • 问题内容: 我面临以下问题:我创建了一个Jenkins Docker容器,并将主机上的Docker套接字与该容器链接。像这样: 然后,当我尝试在詹金斯上创建一些作业时,我收到通常的“权限被拒绝”消息: 尝试在unix:///var/run/docker.sock上连接到Docker守护程序套接字时获得的权限被拒绝:获取 http://%2Fvar%2Frun%2Fdocker.sock/v1.29

  • 问题 是否有一种方法可以将本地计算机上的docker容器部署到CloudFoundry?如果没有,那么有什么方法可以安全地将容器寄存到CF的某个地方来获取它们呢? CloudFoundry是否能够运行作为Python烧瓶应用程序的docker容器?

  • 我想将Redmine Docker映像部署到Azure App Services,并将其指向部署到Azure数据库for MySql服务器的MySql实例。这将为我提供一个完全管理的体系结构。我已经创建了一个MySql实例,可以使用MySql Workbench从本地PC连接到它。不幸的是,我部署到应用服务的Redmine Docker映像无法启动。日志显示:实例******上的Docker经历了