在Docker中清理4.1 segfault

我正在尝试使用Docker(1.9.1)的Varnish 4.1。 我使用musl-libc在Alpine Linux 3.2中构build了一个docker镜像,以减less镜像大小。

Dockerfile:

FROM alpine:3.2 ​ RUN echo 'http://dl-4.alpinelinux.org/alpine/v3.3/main' >> /etc/apk/repositories && \ apk update && apk upgrade -U -a && \ apk add --update varnish \ && rm -rf /var/cache/apk/* Add Comment 

当我尝试在容器内部运行时,有时会出现段错误,但有时候我不会:

 # varnishd -F -W epoll -f /etc/varnish/default.vcl child (4081) Started Pushing vcls failed: CLI communication error (hdr) Stopping Child Child (4081) died signal=11 Child (4081) Panic message: Assert error in child_sigsegv_handler(), mgt/mgt_child.c line 297: Condition(Segmentation fault by instruction at 0x7f8bec8af9e8) not true. version = varnish-4.1.0 revision 3041728 ident = Linux,3.13.0-66-generic,x86_64,-junix,-smalloc,-smalloc,-hcritbit,epoll​ Could not create _.vsm.4071: File exists  # varnishd -F -W epoll -f /etc/varnish/default.vcl child (4081) Started Pushing vcls failed: CLI communication error (hdr) Stopping Child Child (4081) died signal=11 Child (4081) Panic message: Assert error in child_sigsegv_handler(), mgt/mgt_child.c line 297: Condition(Segmentation fault by instruction at 0x7f8bec8af9e8) not true. version = varnish-4.1.0 revision 3041728 ident = Linux,3.13.0-66-generic,x86_64,-junix,-smalloc,-smalloc,-hcritbit,epoll​ Could not create _.vsm.4071: File exists 

有时候我会连续得到2-3段断层,第三,第四次成功运行。

我的环境:

 # gcc --version gcc (Alpine 5.2.0) 5.2.0 Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.​ # cat /etc/os-release NAME="Alpine Linux" ID=alpine VERSION_ID=3.2.3 PRETTY_NAME="Alpine Linux v3.2" HOME_URL="http://alpinelinux.org" BUG_REPORT_URL="http://bugs.alpinelinux.org"​ # ldd --version musl libc Version 1.1.12 # docker version Client: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64​ Server: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64  # gcc --version gcc (Alpine 5.2.0) 5.2.0 Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.​ # cat /etc/os-release NAME="Alpine Linux" ID=alpine VERSION_ID=3.2.3 PRETTY_NAME="Alpine Linux v3.2" HOME_URL="http://alpinelinux.org" BUG_REPORT_URL="http://bugs.alpinelinux.org"​ # ldd --version musl libc Version 1.1.12 # docker version Client: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64​ Server: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64  # gcc --version gcc (Alpine 5.2.0) 5.2.0 Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.​ # cat /etc/os-release NAME="Alpine Linux" ID=alpine VERSION_ID=3.2.3 PRETTY_NAME="Alpine Linux v3.2" HOME_URL="http://alpinelinux.org" BUG_REPORT_URL="http://bugs.alpinelinux.org"​ # ldd --version musl libc Version 1.1.12 # docker version Client: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64​ Server: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64  # gcc --version gcc (Alpine 5.2.0) 5.2.0 Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.​ # cat /etc/os-release NAME="Alpine Linux" ID=alpine VERSION_ID=3.2.3 PRETTY_NAME="Alpine Linux v3.2" HOME_URL="http://alpinelinux.org" BUG_REPORT_URL="http://bugs.alpinelinux.org"​ # ldd --version musl libc Version 1.1.12 # docker version Client: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64​ Server: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64 

另外,当我运行它成功,并尝试清除caching(禁止),subprocess退出与段错误。

这是由musl-libc引起的吗?

进入完全相同的问题。 似乎来自高山的形象。 切换到Ubuntu,它工作正常。