3

Я пытаюсь запустить virtualbox в Docker для использования vagrant. Я пытаюсь добиться этого с помощью Ubuntu. Это мой Dockerfile:

FROM ubuntu

RUN apt-get update
RUN apt-get install -y software-properties-common python-software-properties
RUN add-apt-repository 'deb http://download.virtualbox.org/virtualbox/debian trusty contrib'
RUN add-apt-repository 'deb http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse'
RUN apt-get update
RUN apt-get install -y wget linux-headers-generic
RUN wget http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -

RUN apt-get update
RUN apt-get install -y gcc virtualbox dkms virtualbox-dkms
RUN wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.7.1_x86_64.deb
RUN dpkg -i vagrant_1.7.1_x86_64.deb

Если я затем запускаю virtualbox , я получаю:

WARNING: The character device /dev/vboxdrv does not exist.
         Please install the virtualbox-dkms package and the appropriate
         headers, most likely linux-headers-.

         You will not be able to start VMs until this problem is fixed.
Failed to open the X11 display!

Как видите, я уже пытаюсь установить свои заголовки с помощью apt-get install linux-headers-generic . Но попытка установки с помощью uname: apt-get install linux-headers- uname -r не работает:

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package linux-headers-3.16.7-tinycore64
E: Couldn't find any package by regex 'linux-headers-3.16.7-tinycore64'

Я не могу найти linux-headers-3.16.7-tinycore64 нигде. Погуглил и т.д., Не найти его даже на сайте linux tinycore.

Спасибо за вашу помощь!

1 ответ1

3

Вам нужно иметь модуль ядра в вашей хост-системе, а не в образе докера.

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 image-name

Посмотрите VirtualBox Внутри Docker на Docker Hub для примера.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .