相关疑难解决方法(0)

在 docker 中编译不同内核中的代码会受到什么影响?

我可以信任 Ubuntu 14.04 主机中 redhat6.4 的 docker 容器中的 c/c++ 源代码构建吗?或我需要考虑的任何限制?

我们正在尝试使用 docker 服务于不同的 OS 平台来编译源代码,因为 docker 中的技术是共享主机 os 的内核,请参阅相关问题docker 主机 OS 和容器基础映像 OS 之间的关系是什么?

  • 我的主机操作系统是 ubuntu 14.04(易于安装 docker),内核是 3.13.0-24-generic
  • 我的应用平台是redhat 6.4(内核是2.6.32-358.el6.x86_64

当我为 Ubuntu 的 RHEL 创建容器时,内核也更新3.13.0-24-generic为。

我的应用程序是基于 c/c++ 和 java。

我认为java对编译.jar文件不会有任何问题,因为它是基于jvm的。

对于 c/c++ 代码,我主要理解它取决于libc共享库的种类,而不取决于内核,因此是否可以将这些编译后的代码用于真正的 redhat 环境。

此设置仅用于开发,不用于生产,生成的二进制文件应该安装在带有 RHEL 或 VM 的真正独立机器上。

所以有什么我需要考虑的吗?

可能是更多与 lxc 相关的问题。

更新以添加一些示例

我下载了 gameoflife 代码https://github.com/rvsjoen/game-of-life,并在两个系统中编译,寻找这种情况,因为 md5 是相同的,结果是相同的,并且是可信的。

这是VM中的redhat 6.4系统

[root@redhat game-of-life-master]# cat /etc/redhat-release
Red Hat …
Run Code Online (Sandbox Code Playgroud)

c++ lxc docker

7
推荐指数
1
解决办法
1633
查看次数

标签 统计

c++ ×1

docker ×1

lxc ×1