【问题标题】:Error while deploying web app to AWS ElasticBeanStalk将 Web 应用程序部署到 AWS ElasticBeanStalk 时出错
【发布时间】:2021-09-16 06:52:44
【问题描述】:

我在从 travis CI 部署到 aws elastic beanstalk 时遇到以下错误。

Service:AmazonECS, Code:ClientException, Message:Container list cannot be empty., Class:com.amazonaws.services.ecs.model.ClientException


.travis.yml:

sudo: required
language: generic

services:
  - docker

before_install:
  - docker build -t sathishpskdocker/react-test -f ./client/Dockerfile.dev ./client

script:
  - docker run -e CI=true sathishpskdocker/react-test npm test

after_success:
  - docker build -t sathishpskdocker/multi-client ./client
  - docker build -t sathishpskdocker/multi-nginx ./nginx
  - docker build -t sathishpskdocker/multi-server ./server
  - docker build -t sathishpskdocker/multi-worker ./worker
  # Log in to the docker CLI
  - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_ID" --password-stdin
  # Take those images and push them to docker hub
  - docker push sathishpskdocker/multi-client
  - docker push sathishpskdocker/multi-nginx
  - docker push sathishpskdocker/multi-server
  - docker push sathishpskdocker/multi-worker

deploy:
  provider: elasticbeanstalk
  region: 'us-west-2'
  app: 'multi-docker'
  env: 'Multidocker-env'
  bucker_name: elasticbeanstalk-us-west-2-194531873493
  bucker_path: docker-multi
  On:
    branch: master
  access_key_id: $AWS_ACCESS_KEY
  secret_access_key: $AWS_SECRET_KEY

Dockerrun.aws.json:

{
    "AWSEBDockerrunVersion": 2,
    "containerDefintions": [
        {
            "name": "client", 
            "image": "sathishpskdocker/multi-client",
            "hostname": "client",
            "essential": false,
            "memory": 128
        },
        {
            "name": "server",
            "image": "sathishpskdocker/multi-server",
            "hostname": "api",
            "essential": false,
            "memory": 128
        },
        {
            "name": "worker",
            "image": "sathishpskdocker/multi-worker",
            "hostname": "worker",
            "essential": false,
            "memory": 128
        },
        {
            "name": "nginx",
            "image": "sathishpskdocker/multi-nginx",
            "hostname": "nginx",
            "essential": true,
            "portMappings": [
                {
                    "hostPort": 80,
                    "containerPort": 80
                }
            ],
            "links": ["client", "server"],
            "memory": 128
        }
    ]
}

单独部署部分失败并出现错误: Service:AmazonECS, Code:ClientException, Message:Container list cannot be empty., Class:com.amazonaws.services.ecs.model.ClientException

【问题讨论】:

    标签: amazon-web-services docker amazon-elastic-beanstalk travis-ci


    【解决方案1】:

    啊,没关系,这是我的错。 dockerrun 配置文件中有错字,错误地读取containerDefintions 而不是containerDefinitions

    感谢所有关注我问题的人。干杯!

    【讨论】:

      猜你喜欢
      • 2021-10-11
      • 2018-10-22
      • 2016-11-14
      • 2014-09-11
      • 2020-08-24
      • 2019-09-25
      • 2019-08-20
      • 2021-08-13
      • 2023-04-02
      相关资源
      最近更新 更多