Skip to content

Instantly share code, notes, and snippets.

@victoralvesf
Last active March 30, 2025 13:41
Show Gist options
  • Select an option

  • Save victoralvesf/23f3680aa50ba8f70390e6f7f7f7e8fa to your computer and use it in GitHub Desktop.

Select an option

Save victoralvesf/23f3680aa50ba8f70390e6f7f7f7e8fa to your computer and use it in GitHub Desktop.
Docker no Ryzentosh usando Minikube e VirtualBox.

Como usar o Docker no Ryzentosh pelo Minikube + VirtualBox.

Pre-requisitos

  1. VirtualBox 6.1.40. download
  2. Homebrew. documentação
  3. ProperTree. download
  4. macOS Ventura

Primeiros passos

Preparando para a instalação do VirtualBox

  1. Monte a sua EFI
  2. Com o ProperTree edite o seu arquivo config.plist e na chave NVRAM > Add > 7C436110-AB2A-4BBB-A880-FE41995C9F82 > csr-active-config adicione o valor 03000000.
  3. Verifique se existe a entrada com valor csr-active-config na chave NVRAM > Delete > 7C436110-AB2A-4BBB-A880-FE41995C9F82. Se não houver é necessário adicionar.
  4. Reinicie o macOS.

Esse processo é para desativar algumas partes do SIP, para que o VirtualBox consiga carregar as Kexts necessárias.
OBS: com o SIP parcialmente desabilitado, não é possível realizar atualizações do macOS. Caso notifique uma nova versão, é necessário definir o valor da chave csr-active-config para 00000000 novamente e reiniciar o macOS.

Mais informações em: https://dortania.github.io/OpenCore-Install-Guide/troubleshooting/extended/post-issues.html#disabling-sip

Para garantir que essa mudança na EFI realmente funcionou, execute o comando abaixo no terminal. O retorno precisa estar da seguinte forma:

$ csrutil status
  System Integrity Protection status: unknown (Custom Configuration).

  Configuration:
	  Apple Internal: disabled
	  Kext Signing: disabled
	  Filesystem Protections: disabled
	  Debugging Restrictions: enabled
	  DTrace Restrictions: enabled
	  NVRAM Protections: enabled
	  BaseSystem Verification: enabled

  This is an unsupported configuration, likely to break in the future and leave your machine in an unknown state.

VirtualBox

  1. Abra o DMG e instale o VirtualBox.
  2. Aceite as permissões necessárias nas configurações do macOS. Dentro de Ajustes do Sistema > Privacidade e Segurança é necessário permitir a extensão Oracle.
  3. O macOS vai pedir que o sistema seja reiniciado para que as mudanças sejam aplicadas.

Para garantir que a instalação ocorreu com êxito, após a reinicialização execute o comando abaixo no terminal.

$ VBoxManage --version
  6.1.40r154048

O retorno do comando precisa estar desta forma, o valor após a letra r pode variar, mas, a versão deve ser exatamente a 6.1.40 para funcionar.

Docker e Minikube

Instalação:

brew install minikube docker

Criando o cluster Kubernetes usando o driver do VirtualBox:

minikube start --driver=virtualbox --keep-context

Configurando o Docker CLI na instância atual do Terminal para usar o Minikube:

eval $(minikube docker-env)

Pode ser que seja preciso executar esse comando sempre que iniciar o macOS e for usar o Docker.
Se ao tentar executar algum comando docker e receber o seguinte erro: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?. É necessário executar esse comando.

Caso também queria usar o docker-compose é necessário instalar ele de forma separada:

brew install docker-compose

Se você quer acessar uma aplicação web que foi iniciada por um container docker, ex: http://localhost:8080/route, você vai precisar do IP do Minikube, usar localhost não vai funcionar. Para descobrir o IP do Minikube execute o seguinte comando:

minikube ip

Para facilitar, você pode adicionar esse IP no arquivo /etc/hosts, para que não seja necessário ficar digitando ele sempre.

sudo -- sh -c "echo $(minikube ip) minikube >> /etc/hosts"

Agora pra acessar a aplicação do exemplo anterior será dessa forma: http://minikube:8080/route

Quando não quiser mais usar o Docker, a VM do Minikube pode ser desligada usando o comando:

minikube stop

Para iniciar ela novamente, só executar o comando:

minikube start

Finalização

Com o serviço do Minikube iniciado, será possível subir os containers com Docker ou Docker Compose a vontade! #HappyHacking #UniversoHackintosh

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment