gpt4 book ai didi

Docker 容器为 "unknown"命令返回 "uname -p"

转载 作者:行者123 更新时间:2023-12-01 12:34:46 26 4
gpt4 key购买 nike

我刚刚安装了全新的 Ubuntu Server 14.04.2 LTS,还安装了 docker 来运行容器。我正面临一些问题。一个容器将用于运行 Jenkins,它的一些作业运行脚本来安装 Android NDK/SDK。这些脚本使用 uname -p 命令检查当前机器的平台。此命令在主机上运行良好,但在容器中返回 unknown,如下所示:

lemonade@olympus:/$ docker info
Containers: 14
Images: 171
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Dirs: 199
Execution Driver: native-0.2
Kernel Version: 3.16.0-38-generic
WARNING: No swap limit support
lemonade@olympus:/$ uname -a
Linux olympus 3.16.0-38-generic #52~14.04.1-Ubuntu SMP Fri May 8 09:43:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
lemonade@olympus:/$ uname -p
x86_64
lemonade@olympus:/$ docker run -ti java:7 /bin/bash
root@c6cdbb8a64fb:/# uname -p
unknown
root@c6cdbb8a64fb:/# uname -a
Linux c6cdbb8a64fb 3.16.0-38-generic #52~14.04.1-Ubuntu SMP Fri May 8 09:43:57 UTC 2015 x86_64 GNU/Linux

有谁知道容器为什么返回这个?一些脚本(不是我们编写的)使用它,还有很多 makefile。

谢谢!

最佳答案

我不知道 uname -p 使用 java:7 docker 镜像失败的确切原因,但这似乎是由于 docker debian 图片。使用 ubuntu docker 镜像,一切都很好。

$ docker run debian uname -p
unknown

$ docker run ubuntu uname -p
x86_64

如果您查看 java:7 docker 镜像的 Dockerfile 依赖项,您会发现以下内容:java:7buildpack-deps:jessie-scmbuildpack-deps:jessie-curldebian:jessie

唯一破坏 uname -p 的是对 debian:jessie 的依赖。可以做的是构建您自己的 java:7 docker 镜像,但使其依赖于 ubuntu 而不是 debian

为此,您必须想出一个 Dockerfile,它是用于制作 java:7 图像的文件的合并。

关于Docker 容器为 "unknown"命令返回 "uname -p",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30758693/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com