Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Erro ao executar comando vagrant up

Boa tarde, executei o comando vagrant up após algumas passagens como descrito no vídeo e me deparei com o seguinte erro.

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'ubuntu/bionic64'...
==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'ubuntu/bionic64' version '20201125.0.0' is up to date...
==> default: A newer version of the box 'ubuntu/bionic64' for provider 'virtualbox' is
==> default: available! You currently have version '20201125.0.0'. The latest is version
==> default: '20210210.0.0'. Run `vagrant box update` to update.
==> default: Setting the name of the VM: 1110-aula-inicial_default_1613582049713_72050
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
    default: Adapter 2: hostonly
==> default: You are trying to forward to privileged ports (ports <= 1024). Most
==> default: operating systems restrict this to only privileged process (typically
==> default: processes running as an administrative user). This is a warning in case
==> default: the port forwarding doesn't work. If any problems occur, please try a
==> default: port higher than 1024.
==> default: Forwarding ports...
    default: 81 (guest) => 81 (host) (adapter 1)
    default: 80 (guest) => 80 (host) (adapter 1)
    default: 3306 (guest) => 3306 (host) (adapter 1)
    default: 8080 (guest) => 8080 (host) (adapter 1)
    default: 9000 (guest) => 9000 (host) (adapter 1)
    default: 19999 (guest) => 19999 (host) (adapter 1)
    default: 9001 (guest) => 9001 (host) (adapter 1)
    default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Resized disk: old 10240 MB, req 30720 MB, new 30720 MB
==> default: You may need to resize the filesystem from within the guest.
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
Timed out while waiting for the machine to boot. This means that
Vagrant was unable to communicate with the guest machine within
the configured ("config.vm.boot_timeout" value) time period.

If you look above, you should be able to see the error(s) that
Vagrant had when attempting to connect to the machine. These errors
are usually good hints as to what may be wrong.

If you're using a custom box, make sure that networking is properly
working and you're able to connect to the machine. It is a common
problem that networking isn't setup properly in these boxes.
Verify that authentication configurations are also setup properly,
as well.

If the box appears to be booting properly, you may want to increase
the timeout ("config.vm.boot_timeout") value.

Esse erro foi mostrado em uma das postagens no fórum (https://cursos.alura.com.br/forum/topico-erro-ao-rodar-vagrant-up-128477), mas não foi mostrada a solução.

Poderiam me ajudar?

5 respostas

Olá, Giovana. Tudo bem?

Pode me dizer qual sistema operacional você está usando? Além disso, a única coisa que você fez antes com o Vagrant foi executar o vagrant init?

Você pode tentar executar vagrant halt(ou vagrant halt --force caso ele se recuse) para desligar a máquina, e executar o vagrant up novamente. De vez em quando ocorre um problema somente naquela vez e depois não ocorre mais. Você também pode executar o vagrant destroy para destruir a máquina e tentar novamente.

Uma opção também é abrir o virtualbox e observar qual o estado da máquina que foi iniciada, já que o Vagrant usa o VirtualBox, por padrão, para executar as máquinas. Você também pode tentar iniciar a máquina pelo virtualbox e ver se algum erro mais específico acontece.

Espero ter ajudado. Diz aqui o resultado?

Olá, bom dia! Estou usando o windows 10 pro, versão do vagrant é 2.2.14 e do virtualBox é 6.1.16. Eu não havia rodado o comando vagrant init e quando tentei não deixou por ter o vagrantfile dentro da pasta que estou executando o comando. Destruí a máquina e rodei novamente diversas vezes e sempre dava o mesmo erro, entretanto da ultima vez eu entrei no virtual box e ela aparecia rodando, foi ai que testei o vagrant ssh. A principio deu tudo certo, conectou, mas ao rodar o comando

mysql -u devops -p

Ele apareceu que não estava instalado..

vagrant@ubuntu-bionic:~$ mysql -u devops -p

Command 'mysql' not found, but can be installed with:

apt install mysql-client-core-5.7
apt install mariadb-client-core-10.1

Ask your administrator to install one of them.

O vagrantfile já não faz isso para nós? Acho que tem a ver com o erro dito anteriormente

Oi, Giovanna.

Se está no Vagrantfile, deveria ter sido instalado. Você pode mandar aqui o conteúdo do seu Vagrantfile? Você pode clicar no botão Inserir Código acima da caixa de texto e colocar o conteúdo do arquivo entre as ``` que foram criadas, para que a saída fique mais legível.

Fico aguardando.

Boa tarde! aqui está o código do meu Vagrantfile

# -*- mode: ruby -*-
# vi: set ft=ruby :

# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
  # The most common configuration options are documented and commented below.
  # For a complete reference, please see the online documentation at
  # https://docs.vagrantup.com.

  # Every Vagrant development environment requires a box. You can search for
  # boxes at https://vagrantcloud.com/search.
  config.vm.box = "ubuntu/bionic64"

  # Disable automatic box update checking. If you disable this, then
  # boxes will only be checked for updates when the user runs
  # `vagrant box outdated`. This is not recommended.
  # config.vm.box_check_update = false

  # Disksize
  config.disksize.size = '30GB'
  # Create a forwarded port mapping which allows access to a specific port
  # within the machine from a port on the host machine. In the example below,
  # accessing "localhost:8080" will access port 80 on the guest machine.
  # NOTE: This will enable public access to the opened port
  config.vm.network "forwarded_port", guest: 81, host: 81
  config.vm.network "forwarded_port", guest: 80, host: 80
  config.vm.network "forwarded_port", guest: 3306, host: 3306
  config.vm.network "forwarded_port", guest: 8080, host: 8080
  config.vm.network "forwarded_port", guest: 9000, host: 9000
  config.vm.network "forwarded_port", guest: 19999, host: 19999
  config.vm.network "forwarded_port", guest: 9001, host:9001

  # Create a forwarded port mapping which allows access to a specific port
  # within the machine from a port on the host machine and only allow access
  # via 127.0.0.1 to disable public access
  # config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"

  # Create a private network, which allows host-only access to the machine
  # using a specific IP.
  config.vm.network "private_network", ip: "192.168.33.10"

  # Create a public network, which generally matched to bridged network.
  # Bridged networks make the machine appear as another physical device on
  # your network.
  # config.vm.network "public_network"
  #config.vm.provision :shell, :path => "install.sh"

  # Share an additional folder to the guest VM. The first argument is
  # the path on the host to the actual folder. The second argument is
  # the path on the guest to mount the folder. And the optional third
  # argument is a set of non-required options.
  #config.vm.synced_folder "./", "/home/vagrant/workspace" , :mount_options => ["dmode=777", "fmode=766"]

  # Provider-specific configuration so you can fine-tune various
  # backing providers for Vagrant. These expose provider-specific options.
  # Example for VirtualBox:
  #
  config.vm.provider "virtualbox" do |vb|
  #   # Display the VirtualBox GUI when booting the machine
  #   vb.gui = true
  #
  #   # Customize the amount of memory on the VM:
    vb.memory = "2048"
  end
  # Enable Dynamic Swap Space to prevent Out of Memory crashes
  config.vm.provision "shell", inline: "sudo apt-get update && sudo apt-get install swapspace python python3-pip python-dev libmysqlclient-dev python3-venv  build-essential libssl-dev libffi-dev unzip -y"

  #
  # View the documentation for the provider you are using for more
  # information on available options.

  # Enable provisioning with a shell script. Additional provisioners such as
  # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
  # documentation for more information about their specific syntax and use.
  #config.vm.provision "shell", inline: <<-SHELL
  #SHELL

  # Mysql Part
  $script_mysql = <<-SCRIPT
    apt-get update && \
    apt-get install -y openjdk-8-jdk  mysql-server-5.7 && \
    mysql -e "create user 'devops'@'%' identified by 'mestre';"  && \
    mysql -e "create user 'devops_dev'@'%' identified by 'mestre';"  && \
    mysql -e "create database todo;" && \
    mysql -e "create database todo_dev;" && \
    mysql -e "create database test_todo_dev;" && \
    mysql -e "grant all privileges on *.* to devops@'%' identified by 'mestre';" && \
    mysql -e "grant all privileges on *.* to devops_dev@'%' identified by 'mestre';" 
  SCRIPT
  config.vm.provision "shell", inline: $script_mysql
  config.vm.provision "shell",
    inline: "cat /configs/mysqld.cnf > /etc/mysql/mysql.conf.d/mysqld.cnf"
  config.vm.provision "shell",
    inline: "service mysql restart"
  config.vm.synced_folder "./configs", "/configs"

# Extra
  config.vm.provision "shell",
    inline: "chmod +x /vagrant/scripts/*"
  config.vm.provision "shell",
    inline: "sudo /vagrant/scripts/docker.sh"
end
solução!

A solução para mim foi ir até a BIOS, desativar a virtualização, ligar o pc, ir de novo na BIOS e ativar a virtualização.