Eu executo um comando como:
docker-machine --debug create -d "virtualbox" default
eu recebo
Error creating machine: Error in driver during machine creation: This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory
Aqui é o meu ambiente
helios@mtl-helios:~$ docker --version
Docker version 1.9.0, build 76d6bc9
helios@mtl-helios:~$ docker-machine --version
docker-machine version 0.5.0 (04cfa58)
helios@mtl-helios:~$ vboxmanage --version
5.0.8r103449
helios@mtl-helios:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04 LTS
Release: 14.04
Codename: trusty
Seria ótimo se alguém pudesse me indicar para resolver isso.
Aqui está a saída --debug: https://gist.github.com/GiantEnemyCrab/633c6c7e9f8fd929d348
E aqui está o VBox.log: https://gist.github.com/GiantEnemyCrab/43f3f9990af26deec4c8
Olá @GiantEnemyCrab
Acredito que a mensagem de erro informa o que está errado e o que fazer:
This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory
Você precisa entrar no BIOS do seu laptop e habilitar o VT-X/AMD-v.
Obrigado pela resposta! Na verdade, estou no vmware e é uma das VMs, sem cabeça. Não sou o administrador da máquina, mas suponho que ainda seja possível configurá-la?
Então, você está _dentro_ de uma VM VMWare e está tentando iniciar o virtualbox dentro dela?
Se sim, é muito improvável que funcione. A virtualização dentro da virtualização geralmente não está funcionando.
sim, estou no servidor VM (não físico) e tentando criar uma máquina docker com o docker virtualbox dentro dessa VM.
Eu tenho o VirtualBox dentro do VMware Fusion trabalhando em uma VM no meu laptop, você precisa alternar uma configuração no menu Preferências para que a VM faça a virtualização aninhada funcionar.
@GiantEnemyCrab Se nossa verificação de VTX estiver impedindo você de criar uma VM quando você poderia (por exemplo, com versões mais antigas do Machine), devemos corrigi-lo, mas verifique se a criação de qualquer VM funciona, por favor.
Obrigado pelo feedback até agora para ambos.
Nas versões mais antigas, eu poderia tentar 0.4.1 ou 0.4.0 e voltar aqui com resultados.
oi @nathanleclaire
Estou de volta aqui com alguns resultados. Parece que a própria máquina é criada em 0.4.1, eu acho.....
No entanto, está tendo um problema ao fazer ssh na caixa virtual. E continua no loop de tentar o ssh várias vezes. Pode ser outro problema?
De qualquer forma, vou colar o log de depuração aqui.
Arquivo VBox.log: https://gist.github.com/GiantEnemyCrab/42187e86f4867028dced
depuração da máquina docker em: https://gist.github.com/GiantEnemyCrab/2df075516e922a68a0d1
Oi @GiantEnemyCrab , antes da versão 0.5.0, o vm estava em loop tentando conexão ssh porque o vm não podia ser iniciado. Com a versão 0.5.0, o erro exato agora é exibido.
ok, de alguma forma mudei a versão do virtualbox para o padrão 4.3, deixe-me tentar com o 5.0.8 novamente, desculpe por isso, e voltarei com alguns resultados.
Para ter certeza de que há realmente um problema com a vm criada, você pode capturar sua tela com VBoxManage controlvm vm_name screenshot.png screen.png
Obrigado @dgageot , recebi a captura de tela. E há uma mensagem antes da arte ascii da baleia estivadora dizendo:
This kernel requires an x86-64 CPU, but only detected an -686 CPU.
Unable to boot = please use a kernel appropriate for your CPU.
Neste caso, pelo menos, a VM é criada usando 0.4.1?
Mas estranho, a CPU é realmente x86_64.
helios@mtl-helios:~$ uname -a
Linux mtl-helios 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Hmmmm, como posso seguir em frente?
Oi @GiantEnemyCrab O problema é que você está executando o VirtualBox _inside_ VMWare VM. Portanto, mesmo que o host seja um x86-64 com virtualização de hardware habilitada, há uma boa chance de que o Virtualbox não seja capaz de usar essas instruções VT-X.
@nathanleclaire Como você fez isso funcionar?
Clique em VM => menu "Virtual Machine" => Preferences => Processors and Memory => Advanced options => Enable hypervisor applications in this virtual machine
Muito obrigado pela percepção!
Acontece que, como já estou no Ubuntu, não preciso fazer as coisas do virtualbox. Eu posso apenas criar docker / docker run puxando uma imagem, como postgres, e ele pode ser executado bem.
Eu estava cegamente tentando seguir as instruções especificamente para windows/mac, mas não parece que eu preciso da parte inicial do docker-machine para criar a parte padrão de qualquer maneira.
Por favor, confirme isso, e eu acho que a mensagem de erro dada sobre VT-X, etc, é apropriada no docker-machine v0.5.0. Nesse caso, o ticket pode ser fechado.
No entanto, a preferência de edição de @nathanleclaire também é uma ótima referência.
@GiantEnemyCrab Ótimo! Vamos fechar esse ticket então.
Muito bem a todos :+1:
Esta solução funciona para mim. (Janela 10/8)
Tenho o mesmo problema no meu laptop Windows 7 Enterprise executando uma VM do sistema operacional Ubuntu usando o Oracle VirtualBox.
No entanto, vejo a virtualização habilitada no meu laptop Windows, bem como no Ubuntu VM. O Oracle VirtualBox inclui a configuração de aceleração do sistema: VT-x/AMD-V, paginação aninhada, paravirtualização Hyper-V na VM do Ubuntu, tentei a paravirtualização padrão também, mas não adiantou.
Meu laptop Windows (tem seu próprio sistema operacional Windows - problemas do docker) é capaz de iniciar os contêineres do docker na máquina do docker criada no meu laptop, mas não no Ubuntu VM,
Tudo fica confuso se eu usar comandos docker-machine na minha VM Ubuntu.
root@hyper-VirtualBox:/home/hyper# docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default - virtualbox Stopped Unknown
root@hyper-VirtualBox:/home/hyper# docker-machine start default(default) Starting VM...
This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory
root@hyper-VirtualBox:/home/hyper# docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default * virtualbox Running Unknown Something went wrong running an SSH command!
command : ip addr show dev eth1
err : exit status 255
output :
root@hyper-VirtualBox:/home/hyper# docker-machine -v
docker-machine version 0.5.3, build 4d39a66
VMWare Workstation/Fusion - Ubuntu VM (64 bits 16.04)
Clique em VM => menu "Virtual Machine" => Preferences => Processors and Memory => Advanced options => Enable hypervisor applications in this virtual machine
sudo apt-get install virtualbox
https://github.com/docker/labs/blob/master/swarm-mode/beginner-tutorial/swarm-node-vbox-setup.sh
./swarm-node-vbox-setup.sh
Funcionou muito bem.
$ sudo docker-machine create --driver virtualbox manager1
Executando verificações de pré-criação...
Erro com verificação de pré-criação: "Este computador não tem VT-X/AMD-v ativado. Ativá-lo no BIOS é obrigatório"
Observe que estou usando a máquina AWS ubuntu 16.04
Por favor, guie-me como resolver este erro no Ubuntu 16.04 através do CLI o mais rápido possível
Comentários muito úteis
Clique em VM => menu "Virtual Machine" => Preferences => Processors and Memory => Advanced options => Enable hypervisor applications in this virtual machine