Virtualbox в контейнере Ubuntu Docker отсутствуют заголовки ядра

Я пытаюсь запустить 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 установить Linux-заголовки -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.

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

7
задан vardump
18.12.2022 2:09 Количество просмотров материала 3670
Распечатать страницу

1 ответ

вы должны иметь модуль ядра на хост-системе, а не в образе docker.

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

See VirtualBox Внутри Docker на концентраторе Docker для примера.

3
отвечен Peter M 2022-12-19 09:57

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх