Instalação Offline do Chocolatey
Publicado em: domingo, 25 de maio de 2014
Categorias: Desenvolvimento

Olá, como vai você?

Por aqui as coisas andam bem agitadas! Mas estão bem. Estou muito empolgado com o projeto que estou para lançar, falamos nisso depois.
Hoje vou falar do Chocolatey, diferente do material que se encontra por aí, vou ser um pouco mais objetivo. Vou falar em como instalá-lo em sua infra, quando sua máquina não possui acesso à internet. É o caso de servidores.

Desde o post Coisas úteis que um dev nunca deve deixar de ter, quando me deparei com o Chocolatey e foi paixão à primeira vista. Vale a pena dar uma olhada nesse projeto.

Bom, no meu cenário, minhas aplicações são pacotes chocolatey, hospedadas em um repositório privado, dentro da minha rede, portanto faz todo sentido esse post!

A instalação padrão

Logo no site, você encontra o comando padrão para a instalação

c:\> @powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%systemdrive%\chocolatey\bin

Com esse comando, o script install.ps1 realiza todas as operações necessárias para o setup. Desde o download até a configuração de todo o ambiente.

Fazendo download do script, você verá que ele realiza apenas 2 downloads:

...
# variables
$url = "http://chocolatey.org/api/v2/package/chocolatey/"
...
$file = Join-Path $tempDir "chocolatey.zip"
...
Download-File $url $file
...
$7zaExe = Join-Path $tempDir '7za.exe'
...
Download-File 'http://chocolatey.org/7za.exe' "$7zaExe"

Bom, todo o resto acontece local, é sob essas premissas que vamos brincar com o powershell e com o chocolatey hoje!hero[1]

 

A instalação desconectada

Vamos hospedar os instaladores em um servidor HTTP e fazer uma ligeira modificação no script install.ps1

Preparando a hospedagem da instalação do Chocolatey

Faça download dos pacotes necessários para um servidor HTTP cuja máquina de destino (para instalação do chocolatey) possua conectividade.

No servidor HTTP, execute o comando abaixo no PowerShell

function Download-File {
param (
  [string]$url,
  [string]$file
 )
  Write-Host "Downloading $url to $file"
  $downloader = new-object System.Net.WebClient
  $downloader.DownloadFile($url, $file)
}

$url = "http://chocolatey.org/7za.exe"
$file = "C:\inetpub\wwwroot\7za.exe"
Download-File $url $file


$url = "http://chocolatey.org/api/v2/package/chocolatey/"
$file = "C:\inetpub\wwwroot\chocolatey.zip"
Download-File $url $file

Agora no root do seu default website do IIS, você terá 2 novos arquivos: chocolatey.zip e 7za.exe

Modificando o Script install.ps1

Baixe o arquivo install.ps1 e faça 2 replaces:

De
http://chocolatey.org/api/v2/package/chocolatey/
por
http://IPouNomeDoServidor/chocolatey.zip

e

De
http://chocolatey.org/7za.exe
Por
http://IPouNomeDoServidor/7za.exe

Finalizado!

Execute sua versão do install.ps1

Agora execute sua versão do install.ps1 nos servidores que precisa instalar o Chocolatey e seja feliz!

Muito obrigado pela visita e até mais!

Luiz Carlos Faria

Mensagem do Autor

Espero que goste desse post. Não deixe de comentar e falar o que achou. 

Se acha que esse post pode ajudar alguém que você conheça, compartilhe!

 

Eventos passados

novembro 2020
outubro 2020
setembro 2020
agosto 2020
Nenhum evento encontrado!
Carregar Mais

Publicidade

Assine

0 comentários

Enviar um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Lives

Fique de olho nas lives

Fique de olho nas lives no meu canal do Youtube, no Canal .NET e nos Grupos do Facebook e Instagram.

Aceleradores

Existem diversas formas de viabilizar o suporte ao teu projeto. Seja com os treinamentos, consultoria, mentorias em grupo.

Agenda & Eventos

outubro

novembro 2020

dezembro
DOM
SEG
TER
QUA
QUI
SEX
SAB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
Events for 1st novembro
Sem Eventos
Events for 2nd novembro
Sem Eventos
Events for 3rd novembro
Sem Eventos
Events for 4th novembro
Sem Eventos
Events for 5th novembro
Sem Eventos
Events for 6th novembro
Sem Eventos
Events for 7th novembro
Sem Eventos
Events for 8th novembro
Sem Eventos
Events for 9th novembro
Sem Eventos
Events for 10th novembro
Sem Eventos
Events for 11th novembro
Sem Eventos
Events for 12th novembro
Events for 13th novembro
Sem Eventos
Events for 14th novembro
Sem Eventos
Events for 15th novembro
Sem Eventos
Events for 16th novembro
Sem Eventos
Events for 17th novembro
Sem Eventos
Events for 18th novembro
Sem Eventos
Events for 19th novembro
Sem Eventos
Events for 20th novembro
Sem Eventos
Events for 21st novembro
Sem Eventos
Events for 22nd novembro
Sem Eventos
Events for 23rd novembro
Sem Eventos
Events for 24th novembro
Sem Eventos
Events for 25th novembro
Sem Eventos
Events for 26th novembro
Sem Eventos
Events for 27th novembro
Sem Eventos
Events for 28th novembro
Sem Eventos
Events for 29th novembro
Sem Eventos
Events for 30th novembro
Sem Eventos
Share This