您的位置:首页 > 运维架构 > Docker

docker能跨平台,dockerfile不可以。

2016-11-16 16:51 183 查看
一直以为docker是到处运行的平台,今天碰到的问题,颠覆了这个观点。

两个场景:

制作、测试docker是在本地的ubuntu16.04上进行的。

运行是在aliyun上的ubuntu14.04上进行的。

本地测试好好的docker,传到aliyun上就出现jvm crash的错误。百思不得其解。

aliyun上删除了LD_LIBRARY_PATH的环境变量设置之后就ok了。

if [ "$(getconf WORD_BIT)" = "32" ] && [ "$(getconf LONG_BIT)" = "64" ]; then
   LD_LIBRARY_PATH=$install_root/linux-x86-64:$LD_LIBRARY_PATH
   export LD_LIBRARY_PATH
fi

有谁知道原因么?

原因清楚了:docker跨平台运行是没有问题的。该问题的原因是:aliyun上的docker和本地的docker不完全一致。是通过传到制作docker需要的文件和dockerfile,然后重新制作的。

通过直接docker的save和load,docker运行没有问题。

aliyun上dockerfile的from的部分,如果是latest的,则可能变化了,导致了这个问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  docker ubuntu jvm aliyun