7
respostas

DOCKER MACHINE

Neto Boa Noite Estou com problemas para avançar no treinamento via prompt. Minha versão do docker;

VERSION: 2.2.03 ENGINE: 19.03.5 COMPOSE: 1.25.4 KUBERNETES: V1.15.5

Mais não tenho o Docker Machine.

Verifiquei nos links da release anterior: https://docs.docker.com/docker-for-windows/release-notes/

E direciona para o github: https://github.com/docker/machine/releases/tag/v0.16.2

Baixo o aplicativo mas não funciona.

C:\Users\G1745 IRON>docker-machine ls
'docker-machine' não é reconhecido como um comando interno
ou externo, um programa operável ou um arquivo em lotes.
7 respostas

Não aguentei esperar. Sei que o retorno leva uns 2 dias, mais quero terminar este curso ainda hoje para inciar o Kubernetes. Desinstalei tudo e instalei a versão antiga. A nova versão não tem nada de docker-machine. Tentei como Administrador local tanto no prompt como Shell. Alterei variável de ambiente e nada.

Queria saber se tem uma solução para a versão nova.

Mesmo voltando a versão, não consegui utilizar o prompt com o docker-machine. No momento da criação da VM informa que o Hyper-V esta habilitado. Desabilitei o Hyber-V e o Docker for windows parou de funcionar.

E no prompt não funcionava a criação da VM porque informa que precisa desabilitar o Hyper-V mesmo ja estando desabilitado.

Voltei para versão atual do Docker for Windows e o mesmo desabilita o pacote do docker-machine.

Porém no Power-Shell não funciona o docker-machine


PS C:\WINDOWS\system32> docker machine ls
docker: 'machine' is not a docker command.
See 'docker --help'
PS C:\WINDOWS\system32> cd /
PS C:\> docker machine ls
docker: 'machine' is not a docker command.
See 'docker --help'
PS C:\> docker-machine ls
docker-machine : O termo 'docker-machine' não é reconhecido como nome de cmdlet, função, arquivo de script ou programa
operável. Verifique a grafia do nome ou, se um caminho tiver sido incluído, veja se o caminho está correto e tente
novamente.
No linha:1 caractere:1
+ docker-machine ls
+ ~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (docker-machine:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

PS C:\> docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
PS C:\> docker-machine ls
docker-machine : O termo 'docker-machine' não é reconhecido como nome de cmdlet, função, arquivo de script ou programa
operável. Verifique a grafia do nome ou, se um caminho tiver sido incluído, veja se o caminho está correto e tente
novamente.
No linha:1 caractere:1
+ docker-machine ls
+ ~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (docker-machine:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

PS C:\> docker machine ls
docker: 'machine' is not a docker command.
See 'docker --help'
PS C:\>

Olá Jose Carlos, tudo bem? Você poderia tentar realizar o procedimento de instalação seguindo os passos da documentação:

https://docs.docker.com/docker-for-windows/install/

Fala pra gente o resultado!

-- HYPER-V DESABILITADO COM DOCKER FOR DESKTOP PARADO Ja estou na 8 tentativa de criar por~em sem sucesso.

PS C:\WINDOWS\system32> docker-machine ls
NAME   ACTIVE   DRIVER       STATE     URL   SWARM   DOCKER   ERRORS
vm1             virtualbox   Timeout
vm2             virtualbox   Timeout
vm3             virtualbox   Timeout
vm4             virtualbox   Timeout
vm5             virtualbox   Timeout
vm6             virtualbox   Timeout
PS C:\WINDOWS\system32> docker-machine create -d virtualbox vm8
Running pre-create checks...
Creating machine...
(vm8) Copying C:\Users\G1745 IRON\.docker\machine\cache\boot2docker.iso to C:\Users\G1745 IRON\.docker\machine\machines\vm8\boot2docker.iso...
(vm8) Creating VirtualBox VM...
(vm8) Creating SSH key...
(vm8) Starting the VM...
(vm8) Check network to re-create if needed...
(vm8) Windows might ask for the permission to configure a dhcp server. Sometimes, such confirmation window is minimized in the taskbar.
Error creating machine: Error in driver during machine creation: Unable to start the VM: C:\Program Files\Oracle\VirtualBox\VBoxManage.exe startvm vm8 --type headless failed:
VBoxManage.exe: error: VMMR0_DO_NEM_INIT_VM failed: VERR_NEM_MISSING_KERNEL_API (VERR_NEM_MISSING_KERNEL_API).
VBoxManage.exe: error: VT-x is not available (VERR_VMX_NO_VMX)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component ConsoleWrap, interface IConsole

Details: 00:00:04.851143 Power up failed (vrc=VERR_VMX_NO_VMX, rc=E_FAIL (0X80004005))
PS C:\WINDOWS\system32>

###################################################################

-- COM O HYPER-V HABILITADO APRESENTA ERRO

C:\WINDOWS\system32>docker-machine ls
NAME   ACTIVE   DRIVER       STATE     URL   SWARM   DOCKER    ERRORS
vm1    -        virtualbox   Stopped                 Unknown
vm2    -        virtualbox   Stopped                 Unknown
vm3    -        virtualbox   Stopped                 Unknown
vm4    -        virtualbox   Stopped                 Unknown
vm5    -        virtualbox   Stopped                 Unknown
vm6    -        virtualbox   Stopped                 Unknown

C:\WINDOWS\system32>docker-machine create -d virtualbox vm7
Running pre-create checks...
Error with pre-create check: "This computer is running Hyper-V. VirtualBox won't boot a 64bits VM when Hyper-V is activated. Either use Hyper-V as a driver, or disable the Hyper-V hypervisor. (To skip this check, use --virtualbox-no-vtx-check)"

C:\WINDOWS\system32>

################################################################### --> TENTEI RODAR A SOLUÇÃO ABAIXO MAS NÃO DEU CERTO

Daniel Artine (682.4k xp, 818 posts) Instrutor Instrutor e Desenvolvedor 19/11/2019 Edilson, vamos tentar o seguinte então:

1- Reabilite seu Hyper-V.

2- Acesse o gerenciador do Hyper-V através do menu iniciar.

3- Ao abrir, selecione na aba máquinas virtuais a DockerDesktopVM.

4- No menu lateral direito (Ações) selecione Gerenciador de Comutador Virtual.

5- Selecione a opção Externo e Criar Comutador Virtual logo embaixo.

6- Defina um nome para o comutador. Pode ser comutador mesmo, por exemplo.

7- Aguarde terminar o processo de criação.

8- No seu terminal, digite o comando docker-machine create -d hyperv --hyperv-virtual-switch=comutador vm1.

Se tiver alguma dúvida no processo é só falar :)

---> FALHA

C:\WINDOWS\system32>docker-machine create -d hyperv --hyperv-virtual-switch=comutador vm8
Running pre-create checks...
Error with pre-create check: "vswitch \"comutador\" not found"

Consegui criar a VM acessando via Prompt e PowerShell.

-- Desativei todos os recursos de Virtualização da maquina e na BIOS

-- Instalei o Docker toobox

Porém isso custou o docker for windows ficar desativado.

Acredito que essa não e a melhor solução massss....

José, funciona sim, o Docker Toolbox funciona rodando em cima do virtual box, já o docker for windows funciona utilizando o Hyper-V direto do sistema, então se funcionou tudo bem, só recomendo desinstalar o docker for windows pra não ficar ocupando espaço de forma desnecessária. Porém o Docker Toolbox pode ter uma ou outra diferença em relação ao docker for windows.

Espero ter ajudado!

Olá Jose, tudo bem?

Nesse caso não haverá grandes problemas, pois estamos trabalhando com o Docker apenas em pequenos hosts virtualizados.

Desse modo, não é necessário utilizar o Docker em seu host físico.