ほとんどの場合、これら2つのうちの1つを使用して、Dockerコンテナー(Alpine、centOSなど)で実行されているOSを確認できます
しかし、今回はわかりません。
bash-4.2$ uname -a
Linux 6fe5c6d1451c 2.6.32-504.23.4.el6.x86_64 #1 SMP Tue Jun 9 20:57:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
bash-4.2$ more /etc/issue
\S
Kernel \r on an \m
実行しているOSのテキストバージョンを取得する方法はありますか?
Screenfetch を使用したい。あなたはそれを試してみたいかもしれません。
コードを見ると、それがどのように分布を決定するかがわかります。
lsb_release -sirc
cat /etc/os-release
また、CentOSについても説明します。
cat /etc/issue
uname
は、実行中のカーネル、つまりホストOSカーネルを示します(VMとは異なり、コンテナーは同じカーネルを共有します)。
コンテナのベースイメージを特定するために、コンテナ内からのソリューションは保証されていません。 Janoschが提供するような主要ベンダー(Debian、CentOS、Alpineなどのほとんどのベンダーの場合は/ etc/os-release、Ubuntuの場合は/ etc/lsb-release)からのポインターを探すことができます。パッケージ管理ツールがインストールされているかどうかを確認することもできます(/ etc/apk、/ etc/apt、/ etc/yum)。
コンテナーの外では、画像を検査し、レイヤーを追跡して画像の出所を確認できますが、これはsha256チェックサムの検索に含まれます。最良の方法は、イメージのビルドに使用されたDockerfileを確認することです。