AWS Elastic Beanstalk 部署 Docker,简单的 Spring Boot Eureka 映像失败

AWS Elastic Beanstalk deploying Docker with simple SpringBoot Eureka image failure

我是 AWS 和 Elastic Beanstalk 的新手。我正在尝试使用简单的 Spring 启动 Docker 映像 https://hub.docker.com/r/springcloud/eureka/ 来测试多容器 Docker 部署,只是为了看看目前是否有效。

我正在将一个非常简单的 Dockerrun.aws.json 文件上传到 Beanstalk 控制台:

{
  "AWSEBDockerrunVersion": 2,
  "containerDefinitions": [
    {
      "name": "eureka1",
      "image": "springcloud/eureka",
      "essential": true,
      "memory": 128,
      "portMappings": [
        {
          "hostPort": 80,
          "containerPort": 8761
        }
      ]
    }
  ]
}

springcloud/eureka Docker 镜像默认在端口 8761 上启动服务器,我将主机的端口 80 映射到容器的端口 8761。

所以打开应用程序的 url(类似于 http://sample-env-1.xxx.eu-central-1.elasticbeanstalk.com/ ),它应该显示 Eureka 服务器界面......它没有。它只是说 "Unable to connect" 标准浏览器页面。

日志似乎没有指示错误...或者至少我看不到任何明显的错误。

似乎我将 "memory" 参数设置为 128,这可能还不够。将其切换为 "memoryReservation":128 使其工作。

"memory"表示硬限制,"memoryReservation"表示软限制。如果开发人员不确定内存要求,应始终使用软限制。