Tag: devops

使用Docker容器查看Java Liberty Bluemix应用程序时出现502错误

我在Bluemix上创build了一个Java Liberty应用程序,并从链接到该应用程序的JazzHub Git存储库克隆了示例代码。 然后,我将JavaHelloWorldApp.war文件复制到示例代码的基本目录中,并使用以下文本创build了一个Dockerfile: FROM registry.ng.bluemix.net/ibmliberty:javaee7 ADD JavaHelloWorldApp.war /opt/ibm/wlp/usr/servers/defaultServer/dropins/ 我设置了DevOpspipe道来构build一个图像,然后根据这个Node.js应用程序示例创build一个容器: https ://hub.jazz.net/deploy/index.html ? repository = https://github.com/Puquios / HELLO-容器 应用程序成功构build和部署,但是当我查看新的容器应用程序的URL时收到以下错误: 502错误网关:注册端点无法处理请求。 我该如何解决?

如何pipe理部署?

我是DevOps的新手,需要为不断增长的业务制定战略,以处理许多不同的服务/节点(如100)。 我一直在学习Docker,看起来Docker Cloud是一个很好的服务,但是我不了解各种服务的标准用例,以及如何比较它们。 我需要一些关于如何pipe理开发环境,部署,生产环境和服务器pipe理的指导。 Docker云,厨师云和AWS ECS工具可以帮助所有这些,还是仅仅在某些方面? 这些服务如何不同?

什么是一步一步的过程将一个Java应用程序部署到Docker?

我的工程背景主要是编码/ dev't比部署。 我们最近向我们的团队介绍了微服务,我正在做POC将这些微服务部署到Docker。 我用maven,Java 8(不是OpenJdk)做了一个简单的应用程序,并且准备好部署jar文件,但是我坚持如何在Docker容器上部署和运行/testing应用程序的确切步骤。 我已经在Mac上下载了Docker,并且检查了这个文档,但是我觉得中间有一些步骤丢失了,我感到困惑。 我恳求你的帮助。 谢谢!

Kubernetes复制控制器删除

我有Kunernetes Pod和复制控制器在AWS EC2实例上运行。 如果pod的状态失败或崩溃,则创build该pod的复制控制器必须在5分钟后删除。 基本上我想要的是当我运行命令: "kubectl get pods –namespace=<namespace>" 我想考虑状态列的结果,如果有ClashloopBackOff,那么在5分钟后必须删除那些豆荚。 这是我想自动化,并期待为此编写一个shell脚本。

在Ubuntu切换文件系统覆盖不支持的Docker?

我运行docker在Ubuntu的一个stream浪的虚拟框中以root用户身份login,我试图从devicemapper切换到覆盖,但我得到一个错误说: root@vagrant-ubuntu-trusty-64:/# service docker stop docker stop/waiting root@vagrant-ubuntu-trusty-64:/# rm -rf /var/lib/docker root@vagrant-ubuntu-trusty-64:/# docker daemon -s overlay Command "daemon" is deprecated, and will be removed in Docker 1.16. Please run `dockerd` directly. INFO[0000] libcontainerd: new containerd process, pid: 6788 WARN[0000] containerd: low RLIMIT_NOFILE changing to max current=1024 max=4096 ERRO[0001] 'overlay' not found as a supported filesystem […]

如何将应用程序日志从docker发送到cloudwatch

我们正在使用Kubernetes部署我们的应用程序泊坞窗图像。 我们希望能够把应用程序日志,并推到cloudwatch。 应用程序日志是使用log4j或log4js生成的,具体取决于构build微服务的语言。 什么是正确的方法来做到这一点?

Dockerconfiguration在运行时编辑节点代码

我有一个简单的MEAN应用程序,我想运行多次,唯一的问题是我不希望应用程序的每个实例指向同一个数据库。 为了在Docker中解决这个问题,我将节点代码和MongoDB放在同一个容器中。 该代码引用特定的数据库,但不重要,因为每个容器都有自己的内部数据库服务器。 显然这是浪费,而不是最佳做法,所以我正在寻找替代解决scheme。 理想情况下,我想用一个Node实例保留一个Docker镜像,我知道我可以用两个不同的环境variables两次重buildDocker镜像,但这并不能很好地扩展。 我以为我可以使用Dockernetworking来引用一个数据库服务器容器,然后为每个包含我的节点代码的容器,将入口点作为自定义脚本,在启动节点服务器之前设置一个作为环境variables传递给它的参数。 这样,每当我从该映像运行一个容器,我传递一个新的数据库名称作为节点代码将读取的参数。 这样我就可以从一个映像创build无限容器,所有这些容器都具有唯一的数据库,但指向相同的数据库服务器 我不确定这是否是最好的方式,如果有任何围绕这一点的最佳做法。 干杯

在Docker文件中使用if循环

RUN if [ "$AUTH_MS_PROFILE" = "test" ]; then RUN ["mvn", "verify"]; fi 所以,这种情况下我试图有两个图像prod和testing,因为我不需要运行集成testing@ prod所以,我正在使用build-arg设置dev和testingconfiguration文件我需要有一个if循环,如果input是testing它应该testing否则它不应该

Docker群集模式W / Terraform数字海洋负载平衡。 如何自动缩放?

所以我已经能够通过这里的这篇文章回答我的大部分问题 https://knpw.rs/blog/docker-swarm-terraform/ 我的问题是从本文结束的时候开始,我该如何根据CPU使用率和networking使用等指标进行自动扩展? 例如,如果我的CPU使用率在所有节点上高于70%,则创build一个新实例,如果CPU使用率低于30%,则销毁一个实例。 当然,这些必须是持续使用的,就像所有使用超过70%的CPU使用超过5分钟的节点一样。 我做了一些研究,但不是很清楚。 例如, Digital Ocean有一个监控服务,如果CPU使用率exception高 (或networking负载),您可以根据您设置的阈值向您发送电子邮件 。 问题是 他们没有WebHook的支持 ,所以我不能发送这些信号到我的应用程序。 我的一个想法是为这些通知设置一个特殊的电子邮件,并检查电子邮件。 基于电子邮件的回应,我然后创build一个修改的terraform文件和'terraform apply'它来修改基础设施? 我不确定这是否是好的forms, 因为terraform的angular度是代码作为基础设施,但是如果基础设施被devise为创build新的实例并基于CPU使用情况或networking使用情况一直销毁实例,我不知道如何你在terraform中正确传达了这个概念? 任何指向正确的方向的赞赏,我很坚持在这一点上转向。 也许terraform不适合这种types的设置?

存储/不存储将数据从构build容器传输到其他节点(在jenkins中)

在我的CI基础设施中,我有一个jenkins大师作为容器和2个奴隶(vms)运行。 我尝试在一个节点上的Docker容器中运行一个构build,所以在构build过程中,我隐藏了我的目标文件夹,稍后在其他节点上使用它。 在作业的日志中,我可以看到该文件夹​​成功隐藏。 当构build完成后,容器被自动销毁,然后在下一步我取消该文件夹以获得单独的节点中的另一个阶段,但没有发生..似乎没有任何东西。 PLZ如何将我的目标从容器转移到另一个节点,甚至是主? 这是我的pipe道代码: node('docker') { stage('Checkout Code') { checkout scm } stage('Build') { withMaven( jdk: 'jdk_8', maven: 'maven 3') { mvn 'clean install' stash name: 'war', includes: 'x.war' } } node('master') { stage('test') { withMaven( jdk: 'jdk_8', maven: 'maven 3') { unstash : 'war' sh 'mvn clean test' } } } }