【问题标题】:how to map ports when deploying docker on AWS EB在 AWS EB 上部署 docker 时如何映射端口
【发布时间】:2019-06-19 20:54:54
【问题描述】:

我想将一项服务部署到弹性 beanstalk 中的环境中。如果我想在本地构建它,我会使用这一行:

docker run --detach --name my-nlx-inway (some env en volume parameters) --publish 4443:8443 nlxio/inway:latest

我已经尝试在 Dockerfile 中设置所有这些:

FROM nlxio/inway:latest
ENV NAME my-nlx-inway
EXPOSE 4443

当我部署一切顺利时,我的服务已注册,只是它显示为离线。我认为它在映射中。 使用命令我说--publish 4443:8443,在Dockerfile中我只说EXPOSE 4443

所以我尝试构建一个dockerrun.aws.json

{
  "AWSEBDockerrunVersion": "1", 
  "Ports": [
    {
      "ContainerPort": 8443,
      "HostPort":4443
    }
  ]
}

我使用配置文件添加了映射:

container_commands:
  00001_add_mapping:
    command: 'sed -i "s/docker run -d/docker run -p 4443:8443 -d/" /opt/elasticbeanstalk/hooks/appdeploy/enact/00run.sh'

我在日志中看到了结果:

'docker ps' ran at Tue Jun 11 12:20:02 UTC 2019: 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                NAMES
741a52caf467        f06676e20291        "/usr/local/bin/nlx-…"   11 minutes ago      Up 11 minutes       4443/tcp, 0.0.0.0:4443->8443/tcp   optimistic_johnson

【问题讨论】:

  • 你确定标签 Ports 是正确的吗?快速谷歌搜索显示:"portMappings": [ { "hostPort": 80, "containerPort": 80 } portMappings 将容器上的网络端口映射到主机上的端口。 ====更新===== reddit.com/r/aws/comments/5qubwx/… 也许您还需要做一些额外的调整以使其正常工作。查看 reddis 上关于 elb、.ebextension 设置的评论
  • Portmappings 与多容器一起使用,我使用单容器。我会尝试 tweeking .ebextensions,看起来很有希望!
  • 我认为 tweeking 工作正常(这意味着我可以看到我所做的更改,但尚未注册)但我不确定映射的 '0.0.0.0:' 部分。我编辑了我的问题。

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


【解决方案1】:

好的,除了使用配置文件添加映射之外,我还需要添加一个侦听器。 所以我的最终结构是这样的:

- .ebextensions
  |-commands.config
- Dockerfile

而我的commands.config 看起来像这样:

container_commands:
  00001_add_mapping:
    command: 'sed -i "s/docker run -d/docker run -p 4443:8443 -d/" /opt/elasticbeanstalk/hooks/appdeploy/enact/00run.sh'
option_settings:
  aws:elb:listener:4443:
    ListenerProtocol: TCP
    InstancePort: 4443

【讨论】:

    猜你喜欢
    • 2019-02-23
    • 2019-11-14
    • 1970-01-01
    • 2015-11-22
    • 2017-10-21
    • 2020-07-23
    • 1970-01-01
    • 1970-01-01
    • 2022-07-07
    相关资源
    最近更新 更多