【问题标题】:docker error when using log-driver="syslog" on OS X在 OS X 上使用 log-driver="syslog" 时出现 docker 错误
【发布时间】:2015-05-04 10:37:01
【问题描述】:

在 OS X 上使用 --log-driver="syslog" 时出现 docker 错误

我正在尝试学习如何在 OS X (10.10.3) 上使用 docker 容器,我了解与标准 Linux 实现的差异(需要 boot2docker VM),我想知道是否对我的方式有任何影响可以使用 syslog 记录消息

当我使用 --log-driver="syslog" 选项启动容器时,容器已创建,但启动时出现错误

~$ docker run --log-driver="syslog" --name daemon_dwayne -d ubuntu /bin/sh -c "while true; do echo hello_world; sleep 2; done;"
1f623793049916d5c....
FATA[0000] Error response from daemon: Cannot start container 1f623793049916d5....: Unix syslog delivery error

这在 Linux 机器上运行良好...感谢任何提示

【问题讨论】:

    标签: docker osx-yosemite syslog boot2docker


    【解决方案1】:

    Boot2docker 在一个小型 Linux 虚拟机中运行。默认情况下,syslog 不在 VM 中运行。您可以通过在 VM 中运行 syslogd 来打开它,例如:

    $ boot2docker ssh
    ...
    docker@boot2docker:~$ syslogd
    

    如果您再次尝试运行您的容器,它应该可以工作。

    您可以通过从 boot2docker 虚拟机内的文件 /var/lib/boot2docker/bootsync.sh 调用 syslogd 来使此更改永久生效,boot2docker 将在启动 Docker 之前执行。

    【讨论】:

    • 非常感谢...“默认情况下,系统日志不在虚拟机中运行”忘记检查!!!
    • 在 boot2docker vm 中,syslog 输出附加到/var/log/messages
    • 您知道如何将 syslog 输出链接到 /var/log/messages 以外的其他内容。我尝试使用配置文件 /etc/syslog.conf 但它看起来不起作用。有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 2016-07-30
    • 2013-10-07
    • 2016-02-09
    • 2014-02-07
    • 1970-01-01
    • 2011-08-22
    • 2015-09-25
    • 1970-01-01
    相关资源
    最近更新 更多