zoukankan      html  css  js  c++  java
  • 从 Docker 容器部署 Elastic Beanstalk 应用程序

    Elastic Beanstalk 支持从 Docker 容器部署 Web 应用程序。使用 Docker 容器,您可以定义自己的运行时环境。您可以选择自己的平台、编程语言以及其他平台不支持的任何应用程序依赖项 (如包管理器或工具)。Docker 容器具有独立性,包含您的 Web 应用程序运行所需的所有配置信息和软件。在 Elastic Beanstalk 控制台中定义的所有环境变量都会传递到容器。

    将 Docker 与 Elastic Beanstalk 配合使用会得到一种基础设施,可以自动处理容量配置、负载均衡、扩展和应用程序运行状况监控的详细信息。您可以在支持与 Elastic Beanstalk 集成的服务范围的环境中管理 Web 应用程序,包括但不限于 VPCRDS和 IAM。有关 Docker 的更多信息,包括如何安装、所需软件以及如何使用 Docker 映像启动 Docker 容器,请参阅 Docker:Linux 容器引擎

    多容器 Docker 平台

    Elastic Beanstalk 上的标准通用和预配置 Docker 平台仅支持每个 Elastic Beanstalk 环境对应一个 Docker 容器。为了充分利用 Docker,Elastic Beanstalk 允许您创建您的 Amazon EC2 实例可在其中同时运行多个 Docker 容器的环境。

    下图显示一个配置了三个 Docker 容器的示例 Elastic Beanstalk 环境,这三个 Docker 容器在一个 Auto Scaling 组中的每个 Amazon EC2 实例上运行:

     

    使用多个 Elastic Load Balancing 侦听器

    您可以在多容器 Docker 环境中配置多个 Elastic Load Balancing 侦听器,以支持代理的入站流量或不在默认 HTTP 端口上运行的其他服务。

    在您的源包中创建一个 .ebextensions 文件夹并添加一个文件扩展名为 .config 的文件。以下示例显示了用于在端口 8080 上创建 Elastic Load Balancing 侦听器的配置文件。

    .ebextensions/elb-listener.config

    option_settings:
      aws:elb:listener:8080:
        ListenerProtocol: HTTP
        InstanceProtocol: HTTP
        InstancePort: 8080

    .ebextensions/elb-ingress.config

    Resources:
      port8080SecurityGroupIngress:
        Type: AWS::EC2::SecurityGroupIngress
        Properties:
          GroupId: {"Fn::GetAtt" : ["AWSEBSecurityGroup", "GroupId"]}
          IpProtocol: tcp
          ToPort: 8080
          FromPort: 8080
          SourceSecurityGroupName: { "Fn::GetAtt": ["AWSEBLoadBalancer", "SourceSecurityGroup.GroupName"] }
  • 相关阅读:
    mysql高级查询(转的)
    PHP Content-type 的说明
    在textFieldShouldEndEditing 方法中调用[self.tableView reloadData] 失效问题
    关于navigationcontroller 隐藏navigationBar问题
    iOS证书、签名、安装描述文件
    swift 项目搭建
    定义私有cocoapods 源
    Git 服务器搭建
    UITabelView 介绍
    swift aes 加密
  • 原文地址:https://www.cnblogs.com/cloudrivers/p/11628785.html
Copyright © 2011-2022 走看看