[解決済み] なぜdockerは異なるLinuxディストリビューションを実行できるのですか?[クローズド]
質問
dockerを使って、様々なイメージを引っ張ってくることができます。そして、これらのイメージは異なるLinuxディストリビューションです。 しかし、dockerがどのLinuxディストリビューション上で動作していても、dockerは仮想マシンのようにこれらの異なるLinuxディストリビューションを実行することができます。
dockerが
aufs
を使用して、異なる読み書きアクセスレベルを制御しています。そのため、ホストマシン上のあるファイルを再利用することができます。しかし、Dockerはどのようにして
apt-get
をコンテナ内で実行させることができるのでしょうか?
arch linux
? イメージには
apt-get
のバイナリが含まれていますか?しかし、Linuxディストリビューションによって、ライブラリやソフトウェアのバージョンは異なります。Dockerはどのようにアーチ型Linuxでubuntuを実行することができますか?
どのように解決するのですか?
カーネルが同じだからです。
すべてのlinuxディストリビューションの共通点、そしてなぜlinuxと呼ばれているかというと、linuxカーネルを使用しているからです。
コンテナはホストと同じカーネルを共有します。そのため、Ubuntu ホスト上で Arch イメージを実行することができるのです。
Linux の概要です。
カーネルは、ハードウェアとの通信を処理するオペレーティングシステムの一部です。オペレーティングシステムの最下層に位置します。ここでは、カーネルの主な機能を紹介します。
- メモリ管理
- ネットワーク管理
- デバイスドライバ
- ファイル管理
- プロセス管理
つまり、コンテナを使用する場合、ホストのカーネルにしかアクセスできません。なぜなら、ハードウェアと通信するのはカーネルのみであり、OS が優れた
syscall
を使っている限り、コンテナの中でどんなLinuxディストリビューションでも動かすことができます。(これが、コンテナ内で Windows を使用できない理由です:同じ
syscall
).
関連
-
[解決済み] Cプリプロセッサはなぜ "linux "という単語を定数 "1 "と解釈するのですか?
-
[解決済み] Linuxのディレクトリ内のファイルを再帰的にカウントする
-
[解決済み] Dockerイメージをコンテナとして実行する
-
[解決済み] LinuxのDockerコンテナでGUIアプリケーションを動かせるか?
-
[解決済み] ライブDockerコンテナでポートを公開する
-
[解決済み] Docker共有ボリュームのパーミッションを管理する(最良の)方法は何ですか?
-
[解決済み】Dockerは仮想マシンとどう違うの?
-
[解決済み】Dockerコンテナからホストポートにアクセスする方法
-
[解決済み] Docker - postgresコンテナでpsqlコマンドを実行するには?
-
[解決済み] Ubuntuホスト上のalpine dockerコンテナでGoコンパイルされたバイナリが実行されない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
LinuxでPingを無効にする、または許可する設定方法
-
centos7 インストール クリックハウスとセット ユーザー名 パスワード ケース 詳細
-
deepin linuxからmacosx仮想マシンに直接ファイルをドラッグ&ドロップする方法は?
-
deepin20のデフォルトブラウザを設定するには?deepinにデフォルトブラウザを追加するためのヒント
-
[解決済み] Linuxで特定のテキストを含むすべてのファイルを検索するにはどうすればよいですか?
-
[解決済み] Linuxでファイルをシンボリックリンクするには?[クローズド]
-
[解決済み] 複数のPDFファイルを1つのPDFに結合/変換する【終了】。
-
[解決済み] Unix/Linuxで、ファイルのあるフォルダを別のフォルダにコピーするにはどうしたらいいですか?[クローズド]
-
[解決済み】Dockerは仮想マシンとどう違うの?
-
[解決済み] dockerのホストOSとコンテナのベースイメージOSの関係を教えてください。