Tag: devops

Docker Containers和Swarm的工作监控解决scheme?

我正在寻找Web应用程序的监视解决scheme,部署为通过7-10个虚拟机传播的Docker容器群。 高级要求是: 性能仪表板的可configurationWeb和REST接口 VM级别的一般性能指标(CPU /内存/ IO) 当容器和​​/或VM正在离线/重新启动时警报 需要时可以深入容器处理活动 主机操作系统是CoreOS和Ubuntu 任何build议/最佳做法? 注意:正在使用外部Kibana安装来收集部署在VM上的Logstash代理的应用程序日志。

docker推送到registry不起作用

当我尝试推送到之前创build的registry时,我遇到了问题。 以下是我遵循的步骤。 docker run -d -p 5001:5002 –restart=always –name new_registry registry:2 docker build -t test-app . docker run -p 50100:8080 -d –name app test-app docker tag test-app localhost:5001/test:latest docker push localhost:5001/test:latest ================================================= ✘  ~/G/S/d/a/App   master  docker push localhost:5001/test:latest The push refers to a repository [localhost:5001/test] (len: 1) Sending image list Put […]

将开源应用程序代码的专用文件集成到devopspipe道中

我有一个Java应用程序作为我们整个项目的后端,我们所有的软件都是完全开源的。 问题如下: 我们使用Google的几个API密钥,SendGrid和MySQL数据库validation密钥。 所有这些都存储在application.properties文件中。 我们在GitHub上的代码是一样的,除了这些文件丢失。 目前的解决方法是他们只能在我们部署到Heroku的Heroku远程机器上使用。 每当我们想要部署一个变更时,我们切换到heroku分支,从主分支拉动变化并重新分支这个分支,最后推送它。 我们很快转向了cycle.io,运行集装箱化的应用程序,所以基本上我们转向了Docker 。 我们将有dockerized应用程序和一个MySQL Docker实例部署和相互通信。 引用Cycle 一个环境允许你组织和沟通你的容器。 当您从环境中的容器上单击“开始”时,networking会自动configuration,并通知其存在环境中的任何其他容器。 Cycle.io允许我们自动链接来自Docker Hub的图像,或者将一个git存储库与一个Dockerfile 。 它从那里捡起来,然后自动部署它。 我的问题是,我如何将这个私人文件集成在我的代码构buildtesting部署pipe道? 。 天真地,我正在想方设法在构build之前“注入”这些文件。 我不知道该怎么做。 我目前的docker部署的想法是 在我的本地系统上构build一个docker镜像 将其推送到Docker Hub到一个私有存储库,并允许与Docker集线器集成的cycle.io从那里接收它 (我也想整合Tavis / CI,idk怎么样) 有没有SENSIBLE ,或缺乏另一个词,这样做PRO的方式? 我们是一群希望遵循最佳实践的学生,这个应用程序将会扩大规模。 我们已经完全支付部署和域名通行证等,但我们并没有真正的专家指导。

为什么从docker文件构build占用所有的磁盘空间?

我正在使用docker-compose来构build和运行我的应用程序。 这里是docker-compose.yml: db: image: postgres web: build: . command: sh startup.sh volumes: – .:/code ports: – "8000:8000" links: – db 我的Dockerfile: FROM python:2.7 ENV PYTHONUNBUFFERED 1 RUN apt-get update && apt-get install -y nginx RUN mkdir /code WORKDIR /code ADD requirements.txt /code/ RUN pip install -r requirements.txt ADD . /code/ 所以,当我进入命令行并执行docker-compose up ,只是停留在那里,说Building web…很长一段时间,然后终于完成了错误,说它已经用完了空间。 这个stream浪汉有40GB,所以我不确定是什么原因导致这个空间被占用。 […]

DevOps简单安装

我正在寻找开始为Django的networking应用程序创build适当的隔离环境。 我的第一个倾向是使用Docker。 此外,通常build议在任何python项目中使用virtualenv来隔离依赖关系。 如果我通过Docker镜像隔离项目, virtualenv仍然是必需的吗?

泊坞窗COPY不起作用

研究员,我需要与Docker的帮助! #DockerfileCron FROM node:6 RUN mkdir /www COPY . /www WORKDIR /www RUN apt-get update && apt-get install -y cron CMD ["cron", "-f"] 当我build立一个基于这个Dockerfile的图像时, COPY命令只是复制Dockerfile并忽略文件夹中的所有其他文件。 # construção das imagens docker build -t job/job_cronjob – < DockerfileCron # executa o cron docker run -d \ –name job_cronjob job/job_cronjob 我怎样才能解决这个问题?

更新k8s ConfigMap或Secret而不删除现有的

我一直使用K8S ConfigMap和Secret来pipe理我们的属性。 我的devise非常简单,它将属性文件保存在git仓库中,并使用构build服务器(例如Thoughtworks GO)自动将它们configuration为ConfigMaps或Secrets(在select条件下)到我的k8s集群。 目前我发现我不得不总是删除现有的ConfigMap和Secret,创build一个新的更新如下 第一步:kubectl删除configmap foo 第二步:kubectl创buildconfigmap foo –from-file foo.properties 有没有一个很好的和简单的方法,使一步之内,更有效地比删除当前? 潜在我现在正在做的事情可能会危及使用这些configmaps的容器,如果它尝试挂载而旧的configuration图被删除,而新的configuration没有被创build。 提前致谢

从Nexus Repository Manager OSS 3.0.1-01中移除Docker镜像

我一直在使用Nexus发布我的Docker镜像几个月,我真的很喜欢它添加到经典的Dockerregistry的function。 最近,我们存储的图像数量引起了磁盘空间问题。 我环顾了graphics界面,显然没有什么可以同时删除多个Docker镜像。 我知道有一个Nexus任务去除未使用的工件,但它似乎只适用于Maven和Nugget。 Nexus Repository Manager OSS 3.0.1-01有没有办法同时删除未使用的图像或至less几个图像? 谢谢!

在Docker中使用主机networking和其他networking组成

我试图为我的项目build立一个开发环境。 我有一个容器(ms1),应该放在他自己的networking(在我的情况下是“服务”)和一个容器(apigateway),它应该访问该networking,同时暴露一个http端口到主机的networking。 理想情况下,我的docker组成文件将如下所示: version: '2' services: ms1: expose: – "13010" networks: services: aliases: – ms1 apigateway: networks: services: aliases: – api network_mode: "host" networks: services: docker-compose不允许同时使用network_mode和networking。 我有其他的select吗? 目前我正在使用这个: apigateway: networks: services: aliases: – api ports: – "127.0.0.1:10000:13010" 然后在0.0.0.0:13010上监听。 它可以工作,但速度很慢,如果主机的networking连接断开,它会冻结。 另外,我计划将来在docker上使用stream浪汉,是否允许以一种干净的方式解决?

build议在生产环境中运行Docker Compose堆栈的方法?

我有几个组成文件(docker-compose.yml),描述了一个简单的Django应用程序(五个容器,三个图像)。 我想在生产中运行这个堆栈 – 让整个堆栈在启动时启动,容器重新启动或者在崩溃时重新创build。 没有我关心的容器,容器不会有任何重要的状态,可以随意回收。 我没有find关于如何在生产中特别使用docker-compose的很多信息。 该文档是有帮助的,但没有提及启动时启动的任何事情,而且我正在使用Amazon Linux,因此不能(当前)访问Docker Machine。 我习惯于使用supervisord来保姆进程,并确保它们在启动时启动,但我不认为这是用Docker容器来做的方式,因为它们最终被Docker守护进程监控。 作为一个简单的开始,我想只是把restart: always在我的所有服务,并使一个初始化脚本做启动docker-compose up -d 。 有一种推荐的方式来pipe理生产中的docker堆栈堆栈吗? 编辑:我正在寻找一个“简单”的方式来运行相当于docker-compose up一个强大的方式我的容器堆栈。 我知道堆栈中声明的所有容器都可以驻留在同一台机器上, 在这种情况下,我不需要在多个实例之间编排来自同一个堆栈的容器,但是这也是有帮助的。