0

来自Stark Concourse 教程

以下任务将运行带有标记的开关的uname命令:-adocker-image"14.04"

---
platform: linux

image_resource:
  type: docker-image
  source: {repository: ubuntu, tag: "14.04"}

run:
  path: uname
  args: [-a]

结果:

fly -t tutorial e -c task_ubuntu_uname.yml
executing build 10
initializing
running uname -a
Linux a0c3f38b-7dd3-4a8f-7b3e-e56ce2bf05e9 4.2.0-42-generic #49~14.04.1-Ubuntu SMP Wed Jun 29 20:22:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
succeeded

我很好奇为什么更改标签不会更改 Ubuntu 的版本:

---
platform: linux

image_resource:
  type: docker-image
  source: {repository: ubuntu, tag: "16.04"}

run:
  path: uname
  args: [-a]

结果:

fly -t tutorial e -c task_ubuntu_16_uname.yml
executing build 9
initializing
running uname -a
Linux 58069086-7a27-43f8-71ff-374bcaef0c6d 4.2.0-42-generic #49~14.04.1-Ubuntu SMP Wed Jun 29 20:22:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
succeeded

我看到指南不同,但我希望版本也不同。为什么不是 16.04 版本?

4

1 回答 1

1

uname 将获取您正在运行的机器的主机内核的版本信息 - 这不是命名空间 - 因此您正在运行的容器不会显示。

如果您在 ubuntu 主机上运行docker run --rm -it centos uname -a,​​它仍会显示 ubuntu 内核结果。

于 2017-02-08T12:36:44.517 回答