ということは、windowsで作った場合、dockerのosはwindowsになるイメージ?

はい、その通りです。DockerコンテナはホストOSのカーネルを共有しつつも、ユーザースペースが独立しているため、コンテナ内で実行されているアプリケーションにとっては、ユーザースペースがWindowsであるかLinuxであるかなど、ホストOSに依存します。

具体的にWindows上でDockerコンテナを作成する場合:

  1. Windows Docker Desktop:

    • Windows環境でDockerを実行する場合、Docker Desktopを使用します。Docker DesktopはWindows上でDockerエンジンを提供し、その上でLinuxやWindowsコンテナを実行します。
  2. Windowsベースのコンテナ:

    • Windows上で動作するDockerコンテナを構築すると、そのコンテナ内のユーザースペースはWindowsに基づいたものになります。これはWindowsバイナリやWindows用のライブラリなどが含まれています。
  3. コンテナイメージ:

    • Dockerfileで指定したベースイメージが、Windows Server CoreやWindows Nano Serverなど、Windowsベースのイメージである場合、それに基づいたコンテナイメージが構築されます。

ただし、異なるOSファミリー(WindowsとLinuxなど)のホストOS上でコンテナを実行する場合、ホストOSのカーネルが異なるため、一部のLinux用のアプリケーションがWindows上で実行されるわけではありません。通常、同じOSファミリー上でのコンテナの移植性が高いです。

未分類

Posted by ぼっち