Tag: 部署

如何在没有复制的情况下更新Docker群集服务,并保持零宕机?

我想更新docker群服务而不用停机。 问题是我没有足够的资源来进行服务复制。 有没有办法做到这一点?

Angular 2构build一次,部署在任何地方

是否有可能遵循“构build一次,部署在任何地方”的angular 2应用程序的原则? 我一直在寻找答案,告诉我只是为了每个环境而单独构build它,但那不是我正在寻找的。 我们使用docker和tomcat 。 提前致谢。

使用docker进行Symfony应用程序部署

我来这里是因为我开发了一个Symfony3的应用程序。 我对应用程序的部署有一些疑问。 其实我用docker-compose: version: '2' services: nginx: build: ./docker/nginx/ ports: – 8081:80 volumes: – .:/home/docker:ro – ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro – ./docker/nginx/nginx.conf:/etc/nginx/nginx.conf:ro networks: – default php: build: ./docker/php/ volumes: – .:/home/docker:rw – ./docker/php/php.ini:/usr/local/etc/php/conf.d/custom.ini:ro working_dir: /home/docker networks: – default dns_search: – php db: image: mariadb:latest ports: – 3307:3306 environment: – MYSQL_ROOT_PASSWORD=collectionManager – MYSQL_USER=collectionManager – MYSQL_PASSWORD=collectionManager – MYSQL_DATABASE=collectionManager volumes: – […]

Docker如何绕过需要一个操作系统?

简而言之,Docker镜像/容器如何在另一台没有OS的机器上工作? 对于虚拟机来说,如果你有一个OS A的机器A和一个OS B的机器B,而你想运行源自机器B的机器A的代码,那么安装在机器B上的VM将运行OS A,所以它会使用机器A的代码 但是对于Docker,机器A和机器B都必须安装OS A吗? 还是机器A仍然有OS A,机器B什么都没有,Docker镜像/容器在机器B上运行,并创build类似于OS A的东西,以便它在机器B上工作?

kubernetes部署。 如何更改滚动更新的容器环境variables?

以下是我在谷歌上使用kunbernetes的方式。 我有一个节点应用程序让我们说图书门户 。 节点应用程序使用环境variables进行configuration 。 第一步:我创build了docker文件并推送 gcr.io/<project-id>/book-portal:v1 第二步:部署以下命令 kubectl run book-portal –image=gcr.io/<project-id>/book-portal:v1 –port=5555 –env ENV_VAR_KEY1=value1 –env ENV_VAR_KEY2=value2 –env ENV_VAR_KEY3=value3 第三步: kubectl expose deployment book-portal –type="LoadBalancer" 第四步:获取公共IP kubectl get services book-portal 现在假设我在下一个版本中添加了新function和新configuration。 所以推出新版本v2 第一步:我创build了docker文件并推送 gcr.io/<project-id>/book-portal:v2 第2步:编辑部署 kubectl edit deployment book-portal —————yaml————— … spec: replicas: 1 selector: matchLabels: run: book-portal strategy: rollingUpdate: maxSurge: 1 maxUnavailable: 1 type: […]

在Docker – 服务器连接问题中部署一个最小瓶应用程序

我有一个应用程序,只有依赖项是瓶,它在docker外运行良好,并绑定到默认端口5000 。 这是完整的来源: from flask import Flask app = Flask(__name__) app.debug = True @app.route('/') def main(): return 'hi' if __name__ == '__main__': app.run() 问题是,当我在docker中部署这个服务器时,服务器正在运行,但是从容器外部无法访问。 以下是我的Dockerfile。 图像是与安装瓶的Ubuntu。 tar只包含index.py列出的index.py ; # Dockerfile FROM dreen/flask MAINTAINER dreen WORKDIR /srv # Get source RUN mkdir -p /srv COPY perfektimprezy.tar.gz /srv/perfektimprezy.tar.gz RUN tar x -f perfektimprezy.tar.gz RUN rm perfektimprezy.tar.gz # […]

Docker开发工作stream程

在Docker容器中运行的代码的正确开发stream程是什么? 所罗门·海克斯(Solomon Hykes)表示 ,“官方”工作stream程涉及为每个Git提交构build并运行一个新的Docker镜像。 这是有道理的,但如果我想在将它提交到Git repo之前testing一个变更呢? 我可以想到两种方法来做到这一点: 在本地开发服务器上运行代码(例如,Django开发服务器)。 编辑一个文件; 在dev服务器上testing; 做一个Git提交; 用新代码重buildDocker镜像; 在本地Docker容器上再次testing。 不要运行本地开发服务器。 相反,每次编辑文件时都要构build并运行一个新的Docker镜像,然后在本地Docker容器上testing更改。 这两种方法都非常低效。 有没有更好的办法?

Docker零宕机部署

我正在计划将Docker用于生产应用程序,而且我似乎无法find一个简单的方法来部署到我们的EC2实例(运行Docker容器,显然),而不会简单地杀死第一个Docker容器并启动第二个容器。 我知道一些像Centurion,Dokku和HAProxy这样的解决scheme,但是看起来应该是一个简单的任务似乎有点复杂。 有没有更好的方法?

如何将代码从Git更新到Docker容器

我有一个Docker文件试图将Django代码部署到一个容器 FROM ubuntu:latest MAINTAINER { myname } #RUN echo "deb http://archive.ubuntu.com/ubuntu/ $(lsb_release -sc) main universe" >> /etc/apt/sou$ RUN apt-get update RUN DEBIAN_FRONTEND=noninteractive apt-get install -y tar git curl dialog wget net-tools nano buil$ RUN DEBIAN_FRONTEND=noninteractive apt-get install -y python python-dev python-distribute python-p$ RUN mkdir /opt/app WORKDIR /opt/app #Pull Code RUN git clone git@bitbucket.org/{user}/{repo} RUN pip […]

通过CLI部署命令与Dockerrun.aws.json部署到elasticbeanstalk

我运行一个elasticbeanstalk应用程序,有多个环境。 这个特定的应用程序托pipedocker容器,主持一个Web服务。 要将新版本的应用程序上传和部署到其中一个环境中,可以通过Web客户端并单击“上传和部署”,然后从文件选项中select我的最新Dockerrun.aws.json文件,该文件引用最新版本的私人托pipe容器。 上传和部署工作正常,没有问题。 为了让自己和其他人更容易部署,我希望能够使用CLI来上传和部署Dockerrun.aws.json文件。 如果我使用cli eb deploy命令而没有任何特殊的configuration,那么正常的压缩整个应用程序并将其发送到主机的过程就会发生并失败(不能推断出它只需要读取Dockerrun.aws.json文件)。 我发现了一个关于使用.elasticbeanstalk / config.yml文件控制上传内容的文档。 使用这个语法: deploy: artifact: Dockerrun.aws.json 该文件已上传并实际成功部署到第一批实例,然后始终无法部署到第二组实例。 失败错误的味道:“集装箱意外退出…” 任何人都可以解释,或提供使用CLI的规范方法的部署单个docker集装箱应用程序的链接?