当我在命令行内部时,如何判断Docker镜像运行的是什么?

时间:2018-05-24 18:10:34

标签: linux docker

我正在使用Python开发一个图像处理应用程序,为DIUx xView challenge开发TensorFlow。挑战提交需要从Docker镜像FROM python克隆Docker镜像。我想使用SYCL作为TensorFlow的后端使用OpenCL。有关如何构建此后端的说明假设为Ubuntu 14.04.05 Headless Server。我担心Ubuntu 14.04.05构建指令不能在Docker提供的Linux上运行,所以我需要知道Linux Docker正在为我运行什么。我在Windows 10家庭版上,我在Docker Toolbox Kitematic (Alpha)上运行Docker镜像。我在这张图片中的命令提示符下。我怎么知道Linux的哪个变种正在运行?

3 个答案:

答案 0 :(得分:1)

  

如何判断正在运行的Linux变体?

我假设你想知道哪个GNU / Linux发行版正在运行?

你想要的是例如。

cat /etc/*-release

例如输出

PRETTY_NAME="Debian GNU/Linux 8 (jessie)"
NAME="Debian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=debian
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

lsb_release -a

例如输出

Distributor ID: Debian
Description:    Debian GNU/Linux 8.10 (jessie)
Release:        8.10
Codename:       jessie

lsb_release命令可能无法开箱即用,因此需要先安装(例如。apt-get install lsb-release)。

答案 1 :(得分:0)

在容器内尝试此命令:

cat /etc/issue

或者你也可以从主持人那里做到:

docker run --rm python cat /etc/issue

如果python图像来自Docker Hub,它将是“Debian GNU / Linux 9”。

或者,如果该图像基于Centos,RHEL或Fedora,则可以尝试此命令:

cat /etc/redhat-release

答案 2 :(得分:0)

在你制定它时,不是对确切问题的答案,但你总能在dockerhub找到Dockerfile以了解它是如何制作的: https://hub.docker.com/_/python/