494eaa6617d4ded01f5f3ed98fd0e8f8a4ff9877
Lightweight Docker container for Nicotine+ with noVNC web interface and Firefox ESR browser. Features: - noVNC web interface with dynamic resize support - Firefox ESR for testing ports and browsing - TigerVNC with AcceptSetDesktopSize enabled - Supervisor for process management - Configurable user/group permissions 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Nicotine-Less
Container Docker leggero per Nicotine+ (client Soulseek) con interfaccia web tramite noVNC e Firefox ESR integrato.
Caratteristiche
- Interfaccia web accessibile da browser (noVNC)
- Firefox ESR integrato per testare porte e navigare
- Ridimensionamento dinamico della finestra VNC
- Supporto SSH X forwarding
- Gestione permessi user/group personalizzabili
- Volumi persistenti per configurazione e download
- Ottimizzato per architettura ARM64
- Nessuna porta VNC esposta esternamente (solo web)
Requisiti
- Docker e Docker Compose installati
- Raspberry Pi con architettura ARM64
- Porte disponibili: 6080 (web), 2234 (TCP), 2235 (UDP)
Installazione
1. Clona o crea la directory del progetto
git clone https://git.nicola.sh/public/nicotine-less.git
cd nicotine-less
2. Crea le directory per i volumi
mkdir -p data/config data/downloads data/incomplete
3. Configura le variabili d'ambiente (opzionale)
Modifica docker-compose.yml se necessario:
environment:
- PUID=1000 # Cambia con il tuo user ID (comando: id -u)
- PGID=1000 # Cambia con il tuo group ID (comando: id -g)
- TZ=Europe/Rome # Cambia il tuo timezone
- VNC_RESOLUTION=1280x720 # Risoluzione desktop
- VNC_PASSWORD=nicotine # Password per VNC
4. Build dell'immagine
docker-compose build
5. Avvia il container
docker-compose up -d
Utilizzo
Accesso Web (noVNC)
Apri il browser e vai a:
http://localhost:6080
O da un altro dispositivo nella stessa rete:
http://INDIRIZZO_IP_RASPBERRY:6080
Accesso via SSH X Forwarding
ssh -X user@raspberry_ip
docker exec -it nicotine-less nicotine
Gestione del container
# Visualizza i log
docker-compose logs -f
# Ferma il container
docker-compose down
# Riavvia il container
docker-compose restart
# Aggiorna e ricostruisci
docker-compose down
docker-compose build --no-cache
docker-compose up -d
Struttura dei volumi
./data/
├── config/ # Configurazione Nicotine+ (database, impostazioni)
├── downloads/ # File scaricati completati
└── incomplete/ # Download in corso
Aggiungere cartelle condivise
Per condividere cartelle con altri utenti Soulseek, modifica docker-compose.yml:
volumes:
- ./data/config:/config
- ./data/downloads:/downloads
- ./data/incomplete:/incomplete
- /percorso/musica:/shares/music:ro # Aggiungi questa riga
- /percorso/video:/shares/video:ro # E questa
Poi riavvia il container e configura le condivisioni dentro Nicotine+.
Configurazione Nicotine+
Al primo avvio:
- Apri l'interfaccia web (http://localhost:6080)
- Configura username e password Soulseek
- Vai in Preferenze → Shares per impostare le cartelle condivise
- Vai in Preferenze → Network per verificare le porte (2234/2235)
- Configurazione consigliata per Raspberry Pi:
- Max upload slots: 2-4
- Max download slots: 2-4
- Limite banda in base alla tua connessione
Porte utilizzate
| Porta | Tipo | Descrizione |
|---|---|---|
| 6080 | TCP | Interfaccia web noVNC |
| 2234 | TCP | Connessioni Soulseek |
| 2235 | UDP | Ricerca Soulseek |
Risoluzione problemi
L'interfaccia web non si carica
docker-compose logs
# Verifica che tutti i servizi siano attivi
Permessi negati sui file
Verifica PUID e PGID nel docker-compose.yml:
id -u # User ID
id -g # Group ID
Performance su Raspberry Pi
Modifica i limiti risorse in docker-compose.yml:
deploy:
resources:
limits:
memory: 512M # Riduci se necessario
cpus: '1' # Riduci se necessario
Download lenti
- Verifica la connettività di rete del container
- Controlla le impostazioni di banda in Nicotine+
- Assicurati che le porte 2234/2235 siano aperte nel router
Backup
Per fare backup della configurazione:
tar -czf nicotine-backup-$(date +%Y%m%d).tar.gz data/
Per ripristinare:
tar -xzf nicotine-backup-YYYYMMDD.tar.gz
Aggiornamenti
Per aggiornare Nicotine+ all'ultima versione:
docker-compose down
docker-compose build --no-cache
docker-compose up -d
Sicurezza
- Cambia la password VNC predefinita in
docker-compose.yml - Considera l'uso di un reverse proxy (nginx/traefik) con HTTPS
- Non esporre la porta 6080 su Internet senza protezione
- Usa VPN o SSH tunneling per accesso remoto sicuro
Accesso remoto sicuro (SSH tunnel)
ssh -L 6080:localhost:6080 user@raspberry_ip
Poi apri http://localhost:6080 sul tuo computer locale.
Licenza
Questo progetto è fornito "as-is" senza garanzie.
Link utili
Description
Nicotine+ 3.3.10
Latest
Languages
HTML
69.1%
Dockerfile
11.6%
Shell
10%
JavaScript
9.3%