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是在本地的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的,则可能变化了,导致了这个问题。
相关文章推荐
- DotNetCore跨平台~Dockerfile的解释
- DotNetCore跨平台~Dockerfile的解释
- input type=file accept中可以限制的文件类型
- JAVA中的File.separate(跨平台路径)
- jdk, scala, maven, gradle, ant install shell bash, and Dockerfile for Ubuntu:14:04
- 基于Dockerfile的方式创建SSH服务镜像。
- 用dockerfile构建基于ubuntu的lnmp环境的镜像
- docker rmi 导致后面的命令不执行问题 Dockerfile设置时区问题
- docker学习(3)--Dockfile详解
- 【转】开发者可以使用Docker做什么?
- Docker Dockerfile详解
- Docker问题(Get http:///var/run/docker.sock/v1.20/version:dial unix /var/run/docker.sock: no such file)
- 【系列6】使用Dockerfile创建带LAMP的Centos Docker镜像
- centos7基于Dockerfile搭建jdk、tomcat、maven运行环境
- JWebFileTrans- 一款可以从网络上下载文件的小程序(一)
- Docker学习记录(二)-Dockerfile创建镜像
- 3.3、Dcoker-1.12 Dockerfile,镜像制作详解以及使用说明
- [置顶] Docker学习总结(2)——Docker实战之入门以及Dockerfile(二)
- 使用Dockerfile
- 如何使用Dockerfile构建镜像