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"] }
  • 相关阅读:
    C语言基本快速入门教程
    几何深度学习前沿
    Anaconda 更改清华源
    大学安全教育-实验室安全测试题库
    《如何写好科研论文》(清华)慕课答案
    集群考试试卷
    集群考试相关
    Linux下tar压缩解压用法
    2020-安全微课(新生入学教育)答案
    函数用法和底层分析
  • 原文地址:https://www.cnblogs.com/cloudrivers/p/11628785.html
Copyright © 2011-2022 走看看