亚马逊弹性豆茎eb本地运行在我的机器有问题

时间:2017-09-11 00:18:45

标签: php json amazon-web-services amazon-ec2 amazon-elastic-beanstalk

错误:您可以使用" eb local"只有重新配置的,通用的和多容器的Docker平台。

我想在亚马逊上创建一个多容器泊坞窗容器Web服务器。 我已经在亚马逊上创建了一个重新配置的 - 通用 - 多容器环境。 我正在尝试运行此命令来测试我的Dockerrun.aws.json文件,然后再部署它,但它无法正常工作

我已经用亚马逊的例子dockerrun进行了测试,但它没有工作

Dockerrun.aws.json

{
"AWSEBDockerrunVersion": 2,
"volumes": [
    {
        "name": "php-app",
        "host": {
            "sourcePath": "/var/app/current/php-app"
        }
    },
    {
        "name": "nginx-proxy-conf",
        "host": {
            "sourcePath": "/var/app/current/proxy/conf.d"
        }
    }
],
"containerDefinitions": [
    {
        "name": "php-app",
        "image": "php:fpm",
        "essential": true,
        "memory": 128,
        "mountPoints": [
            {
                "sourceVolume": "php-app",
                "containerPath": "/var/www/html",
                "readOnly": true
            }
        ]
    },
    {
        "name": "nginx-proxy",
        "image": "nginx",
        "essential": true,
        "memory": 128,
        "portMappings": [
            {
                "hostPort": 80,
                "containerPort": 80
            }
        ],
        "links": [
            "php-app"
        ],
        "mountPoints": [
            {
                "sourceVolume": "php-app",
                "containerPath": "/var/www/html",
                "readOnly": true
            },
            {
                "sourceVolume": "awseb-logs-nginx-proxy",
                "containerPath": "/var/log/nginx"
            },
            {
                "sourceVolume": "nginx-proxy-conf",
                "containerPath": "/etc/nginx/conf.d",
                "readOnly": true
            }
        ]
    }
]
}

1 个答案:

答案 0 :(得分:5)

EB CLI阻止使用default_platform: Multi-container Docker 17.03.1-ce (Generic)时出现错误。你可以在这里找到更多https://pypi.python.org/pypi/awsebcli/3.10.4 在继续之前更新您的EB CLI。

更重要的是,如果您在AWS控制台(使用浏览器)中创建了AWS beanstalk应用程序,然后使用eb init将其导入,则导致.elasticbeanstalk/config.yml失败的eb local run稍有变化消息

ERROR: You can use "eb local" only with reconfigured, generic and multi container Docker platforms. 

例如,在使用AWS Console创建的导入应用程序的config.yml中,我有

default_platform: arn:aws:elasticbeanstalk:eu-west-1::platform/Multi-container Docker running on 64bit Amazon Linux/2.7.4

只需将其更改为

default_platform: Multi-container Docker 17.03.1-ce (Generic)

你准备好了!

提示:如果您不想更新EB CLI,请使用

default_platform: Multi-container Docker 1.11.2 (Generic)