【问题标题】:Elastic Beanstalk Docker - How to get container logsElastic Beanstalk Docker - 如何获取容器日志
【发布时间】:2016-08-12 15:05:56
【问题描述】:

我有一个 Apache2 perl 应用程序在 Elastic Beanstalk 的 docker 容器中运行,但在获取 Apache2 日志时遇到问题。

这是我的 Dockerrun.aws.json 文件...

{
  "AWSEBDockerrunVersion": "1",
  "Ports": [
    {
      "ContainerPort": "80"
    }
  ],
  "Volumes": [
    {
      "HostDirectory": "/container_mnt/www/",
      "ContainerDirectory": "/var/www/"
    },
    {
      "HostDirectory": "/var/log/docker_apache2/",
      "ContainerDirectory": "/var/log/apache2/"
    }
  ],
  "Logging": "/var/log/docker_apache2"
}

我有一个设置实例文件夹的 .ebextensions 配置文件...

container_commands:
  01-command:
    command: mkdir -p /container_mnt
  02-command:
    ... do stuff to setup my application folder in /var/www/ ...
  03-command:
    command: mkdir -p /var/log/docker_apache2

当我使用 ssh 连接到实例时,我可以看到日志正在写入正确的文件夹。但是,当我从控制台检索日志时,不包括 apache 日志。

我还需要做些什么才能让日志记录显示在此处吗?

【问题讨论】:

    标签: docker apache2 amazon-elastic-beanstalk


    【解决方案1】:

    原来我误解了“记录”属性的用途。我以为它指的是一个主机文件夹,但它实际上应该是一个容器文件夹。

    我只需要将值更改为...

    "Logging": "/var/log/apache2/"
    

    并从 Volumes 数组中删除该条目。

    【讨论】:

      猜你喜欢
      • 2019-12-19
      • 2015-12-14
      • 2016-06-17
      • 2019-06-04
      • 2017-07-26
      • 2017-06-18
      • 2021-11-25
      • 2019-09-10
      • 2018-09-07
      相关资源
      最近更新 更多