rename folder

This commit is contained in:
2025-05-05 20:01:33 +02:00
parent 16736b8955
commit 06d8f6b7a4
6 changed files with 0 additions and 0 deletions

6
minio/Dockerfile Normal file
View File

@@ -0,0 +1,6 @@
FROM minio/minio:latest
COPY run.sh /usr/local/bin/run.sh
RUN chmod +x /usr/local/bin/run.sh
CMD ["/usr/local/bin/run.sh"]

70
minio/README.md Normal file
View File

@@ -0,0 +1,70 @@
# MinIO Add-on per Home Assistant
Questo add-on fornisce un server **S3 compatibile** basato su MinIO, perfetto per:
- Backup di **Longhorn**
- Archiviazione file/media
- Logging o integrazioni custom
È stato progettato per essere **production-ready**, sicuro, leggero e accessibile direttamente via pannello laterale di Home Assistant.
## ⚙️ Configurazione
```yaml
access_key: admin
secret_key: CHANGEME-strong-password
region: us-east-1
bucket: longhorn-backup
```
## 🌐 Accesso
Una volta installato, accedi a MinIO tramite il pannello laterale o all'indirizzo:
`http://<ip_hass>:9000` (se Ingress non è disponibile)
## 🚀 Installazione
1. Vai su Home Assistant → **Supervisor → Add-on Store**
2. Aggiungi la tua repo Git custom (Settings → Repositories → `https://github.com/<tuo-utente>/minio-addon`)
3. Installa ladd-on, avvia e accedi a MinIO via Ingress
## 🧾 Requisiti
- Home Assistant OS o Supervised
- Architettura supportata: `amd64`, `aarch64`
- Accesso a una cartella persistente per `/data`
## 📂 Struttura del repository
```bash
minio-addon/
├── config.json # Definizione delladd-on
├── Dockerfile # Contenitore MinIO
├── run.sh # Entrypoint con supporto TLS e bucket auto-creation
├── README.md
└── ...
```
## 🧠 Note
Il bucket specificato in bucket: viene creato automaticamente se non esiste
Se usi Longhorn, puoi puntare i backup a:
```bash
http://<IP_HASS>:9000/longhorn-backup
```
Le credenziali vengono passate come variabili d'ambiente in fase di bootstrap
## 🛡 Sicurezza
> ⚠️ Usa sempre password forti.
Considera lattivazione del TLS automatico posizionando i certificati in `/ssl/`.
## ✅ TODO futuri
- Supporto per versioning bucket
- Healthcheck e metriche Prometheus
- Interfaccia per gestione utenti/bucket via opzioni
---
Realizzato con ❤️ per lautomazione e la resilienza.

34
minio/config.json Normal file
View File

@@ -0,0 +1,34 @@
{
"name": "MinIO S3 Server",
"version": "1.0.0",
"slug": "minio",
"description": "MinIO Server S3-compatible object storage server",
"arch": ["amd64", "aarch64"],
"startup": "services",
"boot": "auto",
"hassio_api": false,
"host_network": false,
"panel_icon": "mdi:database",
"panel_title": "MinIO",
"ingress": true,
"ingress_port": 9001,
"ingress_stream": false,
"ports": {
"9000/tcp": 9000,
"9001/tcp": 9001
},
"map": ["config:rw", "ssl:rw"],
"options": {
"access_key": "admin",
"secret_key": "CHANGEME-strong-password",
"region": "us-east-1",
"bucket": "longhorn-backup"
},
"schema": {
"access_key": "str",
"secret_key": "str",
"region": "str",
"bucket": "str"
},
"image": "docker.io/minio/minio:latest"
}

BIN
minio/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

BIN
minio/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

27
minio/run.sh Normal file
View File

@@ -0,0 +1,27 @@
#!/usr/bin/env bash
set -e
# Config via HA options
export MINIO_ROOT_USER="${ACCESS_KEY}"
export MINIO_ROOT_PASSWORD="${SECRET_KEY}"
export MINIO_REGION="${REGION:-us-east-1}"
# TLS support (optional, autodetect)
CERT_PATH="/ssl/cert.pem"
KEY_PATH="/ssl/key.pem"
# Data path
DATA_DIR="/data"
# First-run: make sure bucket exists (done via client)
BUCKET="${BUCKET}"
mkdir -p "$DATA_DIR/$BUCKET"
echo "[INFO] Starting MinIO with access: $ACCESS_KEY, region: $MINIO_REGION"
if [[ -f "$CERT_PATH" && -f "$KEY_PATH" ]]; then
echo "[INFO] TLS cert found, starting in HTTPS mode"
exec minio server $DATA_DIR --address ":9000" --console-address ":9001" --certs-dir /ssl
else
echo "[INFO] Starting in HTTP mode"
exec minio server $DATA_DIR --address ":9000" --console-address ":9001"
fi