如果我只使用没有hostPort的containerPort,则AWS eb的docker设置不起作用。(多容器Docker)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果我只使用没有hostPort的containerPort,则AWS eb的docker设置不起作用。(多容器Docker)相关的知识,希望对你有一定的参考价值。

Elastic Beanstalk:在64位Amazon Linux / 2.11.6上运行的多容器Docker

它适用于eb deploy

{
  "AWSEBDockerrunVersion": 2,
  "containerDefinitions": [
        {
      "name": "nextjs",
      "image": "node:8.15.0-alpine",
      "essential": true,
      "memory": 128,
      "portMappings": [
        {
          "hostPort": 3000,
          "containerPort": 3000
        }           
      ]
    }
}

这不行。 ECS任务已停止。

{
  "AWSEBDockerrunVersion": 2,
  "containerDefinitions": [
        {
      "name": "nextjs",
      "image": "node:8.15.0-alpine",
      "essential": true,
      "memory": 128,
      "portMappings": [
        {
          "containerPort": 3000
        }           
      ]
    }
}

记录在eb deploy之后

019-01-14 12:59:49    INFO    Environment update is starting.
2019-01-14 12:59:58    INFO    Deploying new version to instance(s).
2019-01-14 13:00:15    WARN    Failed to start ECS task, retrying...
2019-01-14 13:00:15    ERROR   Failed to start ECS task: arn:aws:ecs:us-west-2:625650244102:task/492d1f1e-5fad-4be8-9c7b-6aebb5af157a is STOPPED.
2019-01-14 13:00:15    ERROR   ECS task stopped due to: Essential container in task exited. (nextjs:
nginx-proxy: )
2019-01-14 13:00:16    INFO    ECS task: arn:aws:ecs:us-west-2:625650244102:task/492d1f1e-5fad-4be8-9c7b-6aebb5af157a is STOPPED.
2019-01-14 13:00:19    INFO    Starting new ECS task with awseb-deeo-dev-ubn3e2cd52:27.
2019-01-14 13:00:23    INFO    ECS task: arn:aws:ecs:us-west-2:625650244102:task/62386f55-f50c-4e41-9496-b1ec59694e7e is RUNNING.
2019-01-14 13:00:30    INFO    New application version was deployed to running EC2 instances.
2019-01-14 13:00:30    INFO    Environment update completed successfully.

忽略错别字。

如果我只使用containerPort,我不知道为什么它不起作用。有人帮帮我吗?

答案

解决了。

为nextjs docker环境提供足够的内存超过256.但是它会使多个实例设置各种内存。所以,让其他容器的内存相同。

以上是关于如果我只使用没有hostPort的containerPort,则AWS eb的docker设置不起作用。(多容器Docker)的主要内容,如果未能解决你的问题,请参考以下文章

docker网络访问

Jedis-缺少用于简单程序的HostPort类

[k8s]k8s pod的三种网络模式最佳实战

k8s中的端口(port)

NodePort、HostPort和集群IP的区别

kube-router支持hostport 部署