Tag: 连续部署

Docker CD / CI工作stream程的最佳实践是什么?

我对docker worlflow来说是个很新的东西,我想知道docker CD / CI工作stream程的最佳做法是什么……现在大多数文章似乎并没有真正谈论docker的“部署”部分,注册。 我想做的事: 进行一些代码更改 推到Git jenkinsunit testing/ EEtesting jenkinsbuild立docker形象 在registry中存储docker图像 在服务器上运行docker映像。 为了实现步骤1-5,我有下面的堆栈。 用户推送到gitlab – > Gitlab webhook通知jenkins – > jenkins构build项目 – >将图像存储在gitlab dockerregistry中。 我使用Rancher进行Docker镜像部署…我非常喜欢Rancher的分布式。 即我可以指定一个docker镜像来运行,而rancher负责部署我的容器的服务器。 理想情况下,我想第6步是“分布式”(即我不想ssh到服务器,并运行docker run {imagename} ),并有一些服务是部署的权力 有什么目前这样的事情可以让我做到这一点?

使用jenkins – build设环境

我有一个Jenkins服务器负责构build和部署我所有的微服务。 但是,这些微服务中的每一个都需要用于构build和部署的不同版本的库。 在Jenkins中分离这种构build环境的最好方法是什么? 是使用奴隶吗? 有没有涉及Docker的解决scheme?

CI / CD中的Docker镜像仅适用于多主机?

我们是在Docker开发单个主机应用程序的两个人,我们希望减less一些testing时间并使用CI / CD。 许多文章都是关于使用付费服务来运行testing和构buildDocker镜像,然后部署镜像。 在多宿主环境中,我可以看到部署映像的优点,但单个主机又如何呢? 在单个主机案例中部署映像只是一个额外的复杂层? 更新 我们现在正在做的是推动到Git的变化,然后手动testing应用程序,如果它是好的,然后合并到掌握和login到生产服务器,并执行git pull && docker-compose build 。 当我谈到在问题中部署Docker镜像时,部署在产品上几乎就是docker pull 。 关键的区别是docker图像不是在生产服务器上构build的,而是在别的地方。 这是我问的。 当仅在单个主机/机器/服务器/节点上部署图像时,是否有将图像构build在其他地方的优点?

厨师和docker工人

我有点困惑。 作为课程的一部分,我们应该使用Jenkins,Docker和Chef来build立一个CI和CD解决scheme,但是stream程将不会被指定。 我们一直在build立Jenkins,因此每创build一个git commit,它都会创build一个Jenkins的奴隶,它们为testing所需的特定容器创build一个子集,然后将其拆散并报告结果。 所以,今天一直在寻找有关使用厨师和Docker进行持续交付/部署的信息。 我看到的用例如下,在Chef中指定机器部署选项,每台服务器有多less台机器,数据库等等。 当Jenkins从站成功构build并testing应用程序时,是时候部署了。 删除任何旧的容器,并build立新的容器,处理厨师的configuration和其他必要的pipe理。 一直在四处寻找类似用例的信息,似乎没有太多关于它的信息。 一直与厨师提供泊坞坞厨师供应插件修补,但有关使用例如docker插件的信息是不是超级直观。 然后我偶然发现这篇文章( https://coderanger.net/provisioning/ ),它基本上不build议新的项目开始使用厨师提供插件。 有什么我不知道的是,这种用例不是那么受欢迎,甚至只是愚蠢的? 有没有其他插件,我已经错过了或另一个设置与厨师更适合? 提前欢呼!

简单连续为aws中的docker提供程序

我正在使用AWS Code Pipeline,Code Build创build一个新的Docker容器并将其推送到ECR。 我的应用程序是一个简单的直接单容器的基础。 下拉当前正在运行的容器并从ECSregistry中重新启动一个新容器(通过代码pipe道进行代码构build的输出)将会减less摩擦。 我尝试了CloudFormation和EC2用户数据,一方面是自定义脚本,另一方面是ECS(带有任务定义的CloudFormation)(尚未成功)。 我强烈地感到必须有更明显和更简单的方法。

如何使用Drone Docker插件中的自定义DNS设置

我在公司代理人后面使用Drone。 当我在那里构buildDocker容器时,Docker将正确的search服务器以及DNS地址插入到容器的/etc/resolv.conf 。 但是,在使用Docker插件时 ,只有search服务器被修补,而名称服务器被设置为默认的Google名称服务器( 8.8.8.8或8.8.4.4 )。 这显然打破了我的构build,因为我的企业代理DNS地址无法parsing到其关联的IP地址。 这是行为意图和/或是否有解决方法,让我通过我的代理连接到互联网?

使用Jenkins在EC2实例上执行CI / CD

我不知道jenkins和CI / CD,所以我想在这里得到一些build议。 我有一个EC2实例,在这个实例中,它将有WildFly + Appeon,我将在WildFly上部署一个War文件。 这个战争文件将被存储在S3桶中。 Jenkins的工作将从S3获取war文件,然后转到该EC2实例,停止WildFly服务器和Appeon,更换EC2实例上的WAR文件,然后重新启动Wildfly和Appeon。 我应该知道什么才能完成这项工作? 有什么build议?

如果Docker容器容器退出,则使Jenkins构build失败

我有一个工作,将应用程序部署到Docker容器中,构build成功,Docker容器启动。 让我们说,10分钟后docker集装箱退出(下),我该如何处理? 我不认为保持这个工作是一个好主意。 我想要一个像Docker到Jenkins的触发器。

你将如何去dockerfile和rpm脚本?

目前我为我的应用程序创buildrpm并使用puppet安装。 你将如何去使用docker ? 有最佳做法吗? 什么是推荐的方式? 继续为您的应用程序创buildrpm并安装在docker中。 只需使用docker文件就可以在您的映像上创build所需的脚本,而不再需要为您的应用程序创buildrpm 。 谢谢

在亚马逊ecs上的集装箱交货

我正在使用Amazon ECS在uat / production上自动部署容器。 什么是最好的方法来做到这一点? 我有几个前端客户端的REST API 我应该使用nginx将我的api容器打包在同一个容器中吗? 并与其他前端客户端做同样的事情。 或者我必须写一个大的任务定义,以汇集所有我的容器(db,nginx,php,api,clients):(但是这意味着我应该在每次push uat / prod时重新部署所有的基础设施 我很困惑。