【问题标题】:AWS EC2 Task/Service container with java command in the container definitions容器定义中带有 java 命令的 AWS EC2 任务/服务容器
【发布时间】:2017-07-11 02:21:38
【问题描述】:

我们需要在 AWS EC2 上部署一个 docker 容器,Hawkbit 和 RabbitMQ 将在容器上运行。在设置任务放置时,我们尝试将 java 命令放在容器定义的命令部分。

唉,当我们启动服务时,容器停止了,因为 AWS 显然没有执行 java 命令。

有没有办法在不通过 SSH 进入容器的情况下为容器提供 java 命令?

【问题讨论】:

    标签: java amazon-web-services docker amazon-ec2


    【解决方案1】:

    (这里是 AWS 员工)

    第一步,您可以启动 docker 容器并让它在本地保持运行吗?如果容器没有在本地保持运行,它也不会在 ECS 上保持运行。

    如果您的容器在本地运行但不在 ECS 上,那么 docker run 命令可能存在差异。您是否传入环境变量或定义自定义卷或容器运行所需的其他内容? ECS 将使用您在任务定义中定义的参数生成一个 docker run 命令,如果您的任务定义缺少您的 docker run 语句所需的内容,可能会解释该问题。

    您还应该将您的容器连接到 cloudwatch 日志组,并检查该日志组中的日志语句,这可能有助于您诊断 java 进程未启动的原因。如果可能,您可以在此处复制并粘贴日志输出吗?

    【讨论】:

    • 感谢您的回答,我们通过run命令解决了问题,于是hawkbit java服务启动了。我已经按照快速入门在正在运行的 EC2 实例上安装和配置 CloudWatch Logs 代理,但我没有得到任何日志,所以那里有一些工作要做;)。
    猜你喜欢
    • 2015-08-22
    • 2017-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-01
    • 2017-02-27
    • 2018-11-10
    • 2018-02-04
    相关资源
    最近更新 更多