2017-05-11 22 views

答えて

0

これは正しく、ドッカーはホストOSとの償還を共有します。 MacでUbuntuベースのイメージを実行するには、Linuxで仮想マシンを実行する必要があります。この仮想マシンは、コンテナを実行します。 Btw。 Macドッカーではドッカーマシンを使ってコンテナを走らせています。

したがって、すべてのドッカーは、»クロスプラットフォームではありません。また、Windowsドッカーコンテナを実行する場合は、ウィンドウホストも使用します。

詳細:hereと記載されているように、ドッカーには最小バージョン3.10のLinuxカーネルが必要です。これにより、cgroups(カーネル機能)を使用して償却費を管理することができます。

したがって、ホストのカーネルにはその機能が必要です。そうでない場合、仮想マシン(仮想ボックス、ドッカー・マシン)を使用して、VMを実行できるほぼすべてのOSで実行できます。しかし、ポート転送(​​3210)のようないくつかの機能は、http://localhost:8000と入力した場合、VMを使用しても機能しません。その理由は、それをhttp://<ip of vm>:8000に変更する必要があるためです。

+1

これは旧式です。昨夏公開された[Docker for Mac](https://docs.docker.com/docker-for-mac/)は、Docker Machineを使用していません。 OSXに組み込まれたネイティブのハイパーバイザー機能を使用します。マシンのIPアドレスを取得する必要がなくなり、OSX上で動作するコンテナにlocalhostを使用することができます。 Mac OS上でLinuxベースのコンテナを実行することができます。これはHypervisorサポートを使用して行います。しかし、MacやLinuxでWindowsベースのイメージを実行することはできません。 –

0

Dockerはホストosとリソースを共有します。しかし、ホストは常にリナックスシステムですが、Mac OSの場合、仮想化されたLinuxがdockerhttpを実行しています://stackoverflow.com/questions/30632386/is-docker-a-solution-for-making-application-cross-platform

関連する問題