Como baixar repositórios de imagens do Bitnami
Informação extraída do ChatGPT
O endereço que você passou:
https://github.com/bitnami/containers/tree/main/bitnami/suitecrm/8/debian-12
...é uma página de diretório no GitHub, não um servidor de arquivos direto. Portanto, você não pode usar wget
ou curl
para baixar o diretório diretamente.
Mas há duas formas corretas de baixar esse conteúdo:
✅ Opção 1: Clonar apenas esse diretório com git sparse-checkout
(recomendado)
Se você não quiser baixar o repositório todo, mas apenas esse diretório, use git sparse-checkout
.
Passos:
# 1. Clone o repositório, mas sem o conteúdo
git clone --depth 1 --filter=blob:none --sparse https://github.com/bitnami/containers.git
# 2. Vá para a pasta clonada
cd containers
# 3. Ative sparse-checkout para baixar só o diretório desejado
git sparse-checkout set bitnami/suitecrm/8/debian-12
Resultado:
Você terá somente a pasta bitnami/suitecrm/8/debian-12
localmente, sem baixar o repositório completo (~centenas de MB normalmente).
✅ Opção 2: Baixar o repositório inteiro (caso aceite o tamanho maior)
Se preferir baixar tudo (incluindo outras imagens), use:
git clone https://github.com/bitnami/containers.git
cd containers/bitnami/suitecrm/8/debian-12
❌ Por que wget
ou curl
não funciona?
-
GitHub não oferece diretórios como arquivos ZIP automaticamente via URL de pasta.
-
wget
baixaria o HTML da página, não os arquivos reais do diretório.
Shell Script para baixar aplicativos pelo nomecaminho no Bitnami
#!/bin/bash
#echo Solicita"🔧 aoExemplo usuáriode ocaminho: nome da imagem/aplicativobitnami/suitecrm/8/debian-12"
read -p "Digite o nomecaminho dacompleto aplicaçãodo diretório no repositório Bitnami (ex: suitecrm, wordpress, nginx):Containers: " APPTARGET_DIR
# DefineRepositório informaçõesBitnami do repositórioContainers
REPO_URL="https://github.com/bitnami/containers.git"
REPO_DIR="bitnami-containers"TARGET_DIR="bitnami/${APP}/8/debian-12"
# VerificaLimpar se a pasta já existeexistir
if [ -d "$REPO_DIR" ]; then
echo "Removendo pasta existente: $REPO_DIR"
rm -rf "$REPO_DIR"
fi
echo -e "\n📦 Iniciando download dado aplicaçãodiretório '$APP'TARGET_DIR'...\n"
# Clona o repositórioClonar com filtros e modo sparsesparse-checkout
git clone --depth 1 --filter=blob:none --sparse "$REPO_URL" "$REPO_DIR" || {
echo "❌ Falha ao clonar repositório."
exit 1
}
# Entra na pasta clonada
cd "$REPO_DIR" || {
echo "❌ Erro ao acessar diretório $REPO_DIR"
exit 1
}
# TentaBaixar configurarapenas o sparse-checkoutdiretório informado
if git sparse-checkout set "$TARGET_DIR"; then
echo -e "\n✅ AplicaçãoDiretório '$APP'TARGET_DIR' baixadabaixado com sucesso!"
echo "📁 Caminho local: $REPO_DIR/$TARGET_DIR"
else
echo -e "\n❌ AplicaçãoDiretório '$APP'TARGET_DIR' não encontradaencontrado no repositório."
exit 1
fi