已经 docker pull 下官方的 centos6.8 镜像,
但是当我执行 >docker run -it --name centos68_test centos:6.8 /bin/bash
发现进不去容器里面,查了下说现代的 docker 都不支持了,建议我用 centos7 版本以上容器镜像,但是我如果只想复刻代码屎山原先环境怎么办,降 docker 版本?
我看了下日志:应该是宿主内核(我是debian12.12)禁用了 vsyscall(或设置为 none),而 CentOS 6.x 容器里的老旧 glibc/bash 会尝试使用 vsyscall 页面,导致 segfault(Exit 139) 解决方案:添加 vsyscall=emulate 到 /etc/default/grub 即可
1
SuperGeorge 3 天前
不影响,我们 Ubuntu12.04 的都还在跑,另外你这描述里没有什么有效信息,无法判断。
|
2
BeforeTooLate OP @SuperGeorge 那你的 docker 版本是什么?
我的现在的情况是:官方先 docker pull 下 centos:6.8 后,我连 docke run 这个容器都没法起来,都是提示错误:Exited (139) 21 seconds ago 。 |
3
whitewash 3 天前 |
4
BeforeTooLate OP @whitewash 你好请问下您的宿主机 linux 内核是多少?
|
5
julyclyde 2 天前
赞 OP 检查问题的能力
|