Corrigindo erro “Vagrant was unable to mount VirtualBox shared folders. This is usually because the filesystem “vboxsf” is not available…”

Se você receber este erro:

“Vagrant was unable to mount VirtualBox shared folders. This is usually
because the filesystem “vboxsf” is not available. This filesystem is
made available via the VirtualBox Guest Additions and kernel module.
Please verify that these guest additions are properly installed in the
guest. This is not a bug in Vagrant and is usually caused by a faulty
Vagrant box. For context, the command attempted was:”

Instale vagrant-vbguest e tudo voltará a funcionar corretamente.

Geralmente este erro acontece toda vez que você atualizar a versão do VirtualBox ou VMware e para não dar mais esse erro voce precisará atualizar também o programa que gerencia a interação entre o host e o guest, como compartilhamento de diretórios e é ai que entra o vagrant-vbguest.

:)

Instalando ElasticSearch com Docker no MAC OS

Primeiramente vamos instalar o Docker, seguindo o link da instalação oficial:

Siga as instruções no link abaixo:
https://docs.docker.com/docker-for-mac/install/

Após a instalação essa será a estrutura do Docker no seu Mac.

docker-for-mac-install

Obs: Docker para Mac não usa VirtualBox, mas HyperKit, uma solução MacOS de virtualização leve construída sobre o Hypervisor.framework do macOS 10.10 Yosemite ou maior.

Checando as versões do Docker Engine, Compose, e Machine

Alguns comandos úteis para testar se está tudo ok com a instalação do Docker:

Para ver se o docker está buscando corretamente as imagens no repositório remoto:

Finalmente vamos instalar o elasticsearch, para isso utilizaremos o docker pull para buscar nossa imagem do elasticsearch no repositório oficial do docker.

Para ver as imagens baixadas pelo docker e disponíveis para uso, use o comando:

Rodando agora a versão de desenvolvimento:

Para ver se está tudo OK digite:

Observe as credenciais -u elastic:changeme acima, elas são padrão na extensão de segurança X-Pack Security que vem dentro na imagem do elasticsearch.

A autenticação pode ser desabilitada passando xpack.security.enabled=false como opção no comando do docker, ficando assim:

Agora é possível utilizar desta forma, sem autenticação:

E como eu não quero ter que lembrar a todo momento esse comando gigante, vamos dar um nome para ele e assim podermos subir a nosso docker de elasticsearch mais facilmente.

Assim é possível rodar apenas digitando:

Finalmente vamos adicionar dados ao nosso ElasticSearch:

Primeiro precisamos adicionar um indice (um indice é um conjunto de documentos):

Agora digite:

e você verá o índice que foi criado:

com o índice criado, vamos criar um documento qualquer:

Você deve ver:

Obtendo o documento criado acima:

Obtendo um documento que não existe:

Removendo um documento:

Bons estudos :)

Links relacionados:
https://docs.docker.com/docker-for-mac/install/
https://docs.docker.com/docker-for-mac/#check-versions-of-docker-engine-compose-and-machine
http://blog.ryanjhouston.com/2017/04/10/elasicsearch-docker-containers.html
https://www.elastic.co/guide/en/elasticsearch/reference/5.5/docker.html#docker-cli-run-prod-mode
https://marekj.github.io/2016/03/22/elasticsearch-mac-osx

Como obter a versão do ElasticSearch

Basta digitar no seu terminal:

Sucesso, :)