【发布时间】:2017-09-16 10:27:41
【问题描述】:
我想在我的 Windows 10 机器(i5、8GB、240 GB ssd、2&1 笔记本)中拥有一个 Linux 开发环境(Java、Intellij Idea、Clojure 和 ClojureScript)。我可以使用:
- Linux 虚拟机(使用 Hyper-V、VMware Player 或 Virtual Box),或
- 一个运行桌面应用程序的 docker 容器。
我想尝试第二个选项。在Docker Containers on the Desktop,作者运行一个Chrome浏览器docker使用:
$ docker run -it \
--net host \ # may as well YOLO
--cpuset-cpus 0 \ # control the cpu
--memory 512mb \ # max memory it can use
-v /tmp/.X11-unix:/tmp/.X11-unix \ # mount the X11 socket
-e DISPLAY=unix$DISPLAY \ # pass the display
-v $HOME/Downloads:/root/Downloads \ # optional, but nice
-v $HOME/.config/google-chrome/:/data \ # if you want to save state
--device /dev/snd \ # so we have sound
--name chrome \
jess/chrome
他使用的 Dockerfile 可以适应运行其他桌面应用程序,但是上面的命令在 Windows 中不起作用。我有一个正在运行的 XWindows 服务器(在 Windows 10 中),但我想知道如何更改 -e DISPLAY=unix$DISPLAY 和 --device /dev/snd 选项。如何更改此命令才能工作?
Docker 使用 Hyper-V Linux VM 在 Windows 中运行。它会比 Hyper-V(或其他 VM 系统)中的完整 Linux VM 更快,还是模块化是 docker 在这种情况下的唯一优势?
【问题讨论】:
标签: linux docker windows-10 virtual-machine hyper-v