是否可以在docker容器中运行virtualbox

时间:2014-09-09 10:06:47

标签: virtualbox docker

我尝试以特权模式运行容器,但仍然无法加载vboxdrv。

我得到了

WARNING: The vboxdrv kernel module is not loaded. Either there is no module
     available for the current kernel (3.11.0-22-generic) or it failed to
     load. Please recompile the kernel module and install it by

       sudo /etc/init.d/vboxdrv setup

     You will not be able to start VMs until this problem is fixed.

4 个答案:

答案 0 :(得分:12)

是的,你可以。您需要确保在主机系统上安装内核模块。我正在运行Ubuntu,但我确定它在其他发行版上类似:

sudo apt-get install linux-headers-generic virtualbox-dkms

确保加载内核模块:

sudo /etc/init.d/virtualbox status
VirtualBox kernel modules are loaded.

现在,运行docker容器,并将/ dev / vboxdrv挂载为卷:

docker run -it -v /dev/vboxdrv:/dev/vboxdrv your/container-image

答案 1 :(得分:12)

编辑于2016-03-27 12:54 UTC

我有完全相同的问题,我可以使用CentOS 7上的Extension Pack和phpvirtualbox将最新版本的VirtualBox成功停靠。

您必须安装大量依赖项,例如kernel-devel,make,gcc和dkms。在完成docker build之后,你必须使用这些标志--privileged=true -v /dev/:/dev/运行docker镜像。你需要标志--privileged=true来运行带有docker版本1.10.3的图像< / p>

有关详细信息,请参阅我的Dockerfilerun.sh

有关详细信息,请查看my repository,尤其是Makefilevirtualbox.Dockerfilevboxwebsrv.Dockerfilephpvirtualbox.Dockerfile

答案 2 :(得分:1)

2021 年:

检查 my git repository 以了解我如何使用基于 Ubuntu 20.04 的 VirtualBox 6.1。

只需运行:docker run -d --rm --network=host --device /dev/vboxdrv:/dev/vboxdrv -e DISPLAY=unix:0 garo/docker-virtualbox 即可。

不要忘记,正如其他回复中提到的,您的主机系统上需要有 virtualbox 内核模块。在主机上安装 VirtualBox 是最简单的方法。 (安装后可以立即再次删除)

答案 3 :(得分:0)

2019年:

  • Virtualbox版本:6.0
  • Docker版本:18.09.6
  • Ubuntu 18.04

关键是使用已运行systemd的docker映像。我选择了jrei/systemd-ubuntu参见here

    docker run -d --privileged \
    --name systemd-ubuntu --network=host \
    --device /dev/vboxdrv:/dev/vboxdrv \
    -v /sys/fs/cgroup:/sys/fs/cgroup:ro \
    -v /tmp:/tmp -it jrei/systemd-ubuntu

在我运行的容器内:

    apt update
    apt -y install wget
    apt -y install gnupg2
    apt -y install systemd
    apt -y install software-properties-common
    wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | apt-key add -
    wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | apt-key add -
    add-apt-repository "deb https://download.virtualbox.org/virtualbox/debian bionic contrib"
    apt update
    apt -y install virtualbox-6.0

享受:-)