/proc/sys/kernel/c-6ren">
gpt4 book ai didi

docker - 构建docker镜像时如何修改 `core_pattern`

转载 作者:行者123 更新时间:2023-12-02 19:20:09 31 4
gpt4 key购买 nike

我想在构建docker镜像的时候修改core_pattern,我的docker文件是这样的:

FROM centos:7
RUN echo "core-%e" > /proc/sys/kernel/core_pattern

然后我运行 docker build 并得到一个错误
/bin/sh: /proc/sys/kernel/core_pattern: Read-only file system

有人帮忙吗?

最佳答案

我自己需要这个,我刚刚发现如何。
它与docker无关,而是与一般的linux有关。
我正在使用 ubuntu,我 99% 的确定 centos 在这方面的行为是相同的。

它是通过 sysctl 命令编辑的。

看例子

bash$ cat /proc/sys/kernel/core_pattern 
|/usr/share/apport/apport %p %s %c %d %P %E
bash$ sudo sysctl -w kernel.core_pattern="|/usr/share/apport/apport-kde %p %s %c %d %P %E"
kernel.core_pattern = |/usr/share/apport/apport-kde %p %s %c %d %P %E
bash$ cat /proc/sys/kernel/core_pattern
|/usr/share/apport/apport-kde %p %s %c %d %P %E
bash$

请注意,以 | 开头的值是表示命令。核心转储将作为 STDIN 发送到命令

既然你问了关于 docker 的问题,让我也提供一个兼容的答案。
FROM centos:7
RUN sudo sysctl -w kernel.core_pattern="core-%e"

有关您可以在文件中使用的核心模式的更多信息,而不仅仅是 %e,请参阅 https://sigquit.wordpress.com/2009/03/13/the-core-pattern/

还有另一个相关的问题/答案,其中包含更多详细信息

https://unix.stackexchange.com/questions/343275/why-is-editing-core-pattern-restricted

关于docker - 构建docker镜像时如何修改 `core_pattern`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60574458/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com