A rede da minha empresa está usando proxy. Então, quando eu uso vagrant up
, ele me mostrou um erro de permissão 401.
Como posso fazer algumas configurações para usar o vagrant?
proxy
vagrant
http-proxy
ithelloworld
fonte
fonte
vagrant plugin install vagrant-proxyconf
. Agora eu sei .Respostas:
Instale o proxyconf:
Configure seu Vagrantfile:
fonte
config.env_proxy.*
está obsoleto a partir da versão 2.0 e foi substituído porconfig.proxy.*
.config.proxy.https = "https://yourproxy:8080"
é issohttps
ouhttp
na segunda linhaSe o seu proxy requer autenticação, é melhor definir a variável de ambiente ao invés de armazenar sua senha no Vagrantfile. Além disso, seu Vagrantfile pode ser usado facilmente por outras pessoas que não estejam atrás de um proxy.
Para Mac / Linux (em Bash)
então
Para Windows, use definir em vez de exportar.
então
fonte
export VAGRANT_HTTPS_PROXY=${https_proxy}
nas instruções do Mac / Linux.Instalar o proxyconf resolverá isso, mas atrás de um proxy você não pode instalar um plugin simplesmente usando o comando
vagrant plugin install
, o Bundler irá gerar um erro.defina seu proxy em seu ambiente se você estiver usando um sistema semelhante ao unix
ou obtenha uma resposta mais detalhada aqui: Como usar o bundler atrás de um proxy?
depois de configurar o proxyconf
fonte
Detecte automaticamente suas configurações de proxy e injete-as em todas as suas VMs vagrant
instale o plugin proxy
adicione esta configuração ao seu usuário privado / VagrantFile (ela será executada para todos os seus projetos):
agora sua VM!
fonte
vagrant reload
será corrigida, e pode ser melhor para detectar configurações de proxy de entrada / saída automaticamente ao se conectar a novas redes e alertar o usuário ou fazer com que funcione perfeitamente. tmatilai.github.io/vagrant-proxyconf mencionou a desativação, mas não tenho certeza se aborda esses pontos.Em um host Windows
abrir um prompt CMD;
Substitua o endereço e a porta nos snippets acima pelo que for apropriado para sua situação. O acima permanecerá definido até que você feche o prompt do CMD. Se funcionar para você, considere adicioná-los permanentemente às variáveis de ambiente para que você não precise defini-los toda vez que abrir um novo prompt CMD.
fonte
No Windows , você deve definir uma variável para especificar as configurações de proxy, faça download do plug-in vagrant-proxyconf: (substitua {PROXY_SCHEME} (http: // ou https: //), {PROXY_IP} e {PROXY_PORT} pelos valores corretos)
Depois disso, você pode adicionar o plug-in para codificar suas configurações de proxy no arquivo vagrant
e então você pode fornecer configurações config.proxy.xxx em seu Vagrantfile para ser independente das variáveis de configuração de ambiente
fonte
vagrant plugin install vagrant-proxyconf --plugin-source http://rubygems.org
srcVocê desejará instalar o plugin proxyconf, pois isso torna a configuração do proxy para as máquinas convidadas bastante simples no VagrantFile
No entanto, há algumas coisas que ainda podem dar errado. Em primeiro lugar, você provavelmente não pode instalar plug-ins vagrant quando está atrás do proxy. Se for esse o caso, você deve baixar a fonte, por exemplo, de rubygems.org e instalar a partir da fonte
Se você resolver esse problema, você pode ter a sorte de estar atrás de um proxy NTLM, o que significa que se você estiver usando * nix em suas máquinas convidadas, você ainda tem um caminho a percorrer, porque a autenticação NTLM não é suportada nativamente. Existem muitas maneiras de resolver isso. Usei o CNTLM para resolver essa parte do quebra-cabeça. Ele atua como cola entre os protocolos de autorização padrão e NTLM
Para uma explicação completa, dê uma olhada nesta entrada do blog sobre como configurar o vagrant por trás de um proxy corporativo
fonte
vagrant plugin install file://fully/qualified/path/vagrant-proxyconf-1.x.0.gem
. Fonteplugin-source
instalar de um GEM local, mas ainda não consegui fazer isso funcionar no Windows. Não tenho certeza se minha sintaxe está errada, tipofile://C:/path1/path2/vagrant-proxyconf-1.5.2.gem
? Eu também tentei a abordagem que @Martin mencionou acima, isso também não funcionou, pois ainda está tentando entrar em contato com rubygems nesse casovagrant plugin install C:/folder1/folder2/vagrant-proxyconf-1.5.2.gem --plugin-clean-sources
a chave é--plugin-clean-sources
que faz com que ele não tente acessar rubygemsA pergunta não menciona o provedor de VM, mas no meu caso, utilizo o Virtual Box no mesmo ambiente. Há uma opção na GUI do Virtual Box que precisei habilitar para que funcione. Está localizado nas preferências do app Virtual Box: Arquivo >> Preferências ... >> Proxy . Depois de configurar isso, pude trabalhar sem problemas. Espero que essa dica também possa ajudar vocês.
fonte
Se você realmente deseja que suas configurações de proxy e instalações de plug-in estejam em seu Vagrantfile, por exemplo, se você está fazendo um Vagrantfile apenas para seu ambiente corporativo e não pode ter usuários editando variáveis de ambiente, esta foi a resposta para mim:
(Se não, apenas defina-as como variáveis de ambiente como as outras respostas dizem e consulte-as em env nas diretivas config.proxy.http (s).)
fonte
Alguns caracteres especiais na senha criam problemas no proxy. Faça um escape ou evite caracteres especiais na senha.
fonte
No PowerShell, você pode definir as variáveis de ambiente http_proxy e https_proxy assim:
fonte
No MS Windows isso funciona para nós:
E o equivalente para * nix:
fonte