Vai al contenuto principale
La configurazione devcontainer di riferimento e il Dockerfile associato offrono un contenitore di sviluppo preconfigurato che puoi utilizzare così com’è o personalizzare secondo le tue esigenze. Questo devcontainer funziona con l’estensione Dev Containers di Visual Studio Code e strumenti simili. Le misure di sicurezza migliorate del contenitore (isolamento e regole firewall) ti permettono di eseguire claude --dangerously-skip-permissions per ignorare i prompt di autorizzazione per operazioni automatiche.
Sebbene il devcontainer fornisca protezioni sostanziali, nessun sistema è completamente immune da tutti gli attacchi. Quando eseguito con --dangerously-skip-permissions, i devcontainer non impediscono a un progetto dannoso di estrarre qualsiasi cosa accessibile nel devcontainer, incluse le credenziali di Claude Code. Ti consigliamo di utilizzare i devcontainer solo quando sviluppi con repository affidabili. Mantieni sempre buone pratiche di sicurezza e monitora le attività di Claude.

Caratteristiche principali

  • Node.js pronto per la produzione: Basato su Node.js 20 con dipendenze di sviluppo essenziali
  • Sicurezza per design: Firewall personalizzato che limita l’accesso di rete solo ai servizi necessari
  • Strumenti user-friendly: Include git, ZSH con miglioramenti di produttività, fzf e altro ancora
  • Integrazione perfetta con VS Code: Estensioni preconfigurate e impostazioni ottimizzate
  • Persistenza della sessione: Preserva la cronologia dei comandi e le configurazioni tra i riavvii del contenitore
  • Funziona ovunque: Compatibile con ambienti di sviluppo macOS, Windows e Linux

Iniziare in 4 passaggi

  1. Installa VS Code e l’estensione Remote - Containers
  2. Clona il repository dell’implementazione di riferimento di Claude Code
  3. Apri il repository in VS Code
  4. Quando richiesto, fai clic su “Reopen in Container” (o usa Command Palette: Cmd+Shift+P → “Remote-Containers: Reopen in Container”)

Analisi della configurazione

La configurazione devcontainer è composta da tre componenti principali:
  • devcontainer.json: Controlla le impostazioni del contenitore, le estensioni e i montaggi dei volumi
  • Dockerfile: Definisce l’immagine del contenitore e gli strumenti installati
  • init-firewall.sh: Stabilisce le regole di sicurezza della rete

Funzionalità di sicurezza

Il contenitore implementa un approccio di sicurezza multi-livello con la sua configurazione firewall:
  • Controllo di accesso preciso: Limita le connessioni in uscita solo ai domini nella whitelist (registro npm, GitHub, API Claude, ecc.)
  • Connessioni in uscita consentite: Il firewall consente connessioni DNS e SSH in uscita
  • Politica di default-deny: Blocca tutti gli altri accessi di rete esterni
  • Verifica all’avvio: Convalida le regole firewall quando il contenitore si inizializza
  • Isolamento: Crea un ambiente di sviluppo sicuro separato dal tuo sistema principale

Opzioni di personalizzazione

La configurazione devcontainer è progettata per essere adattabile alle tue esigenze:
  • Aggiungi o rimuovi estensioni di VS Code in base al tuo flusso di lavoro
  • Modifica le allocazioni di risorse per diversi ambienti hardware
  • Regola le autorizzazioni di accesso di rete
  • Personalizza le configurazioni della shell e gli strumenti per sviluppatori

Esempi di casi d’uso

Lavoro sicuro con i clienti

Utilizza i devcontainer per isolare diversi progetti client, assicurando che il codice e le credenziali non si mescolino mai tra gli ambienti.

Onboarding del team

I nuovi membri del team possono ottenere un ambiente di sviluppo completamente configurato in pochi minuti, con tutti gli strumenti e le impostazioni necessarie preinstallati.

Ambienti CI/CD coerenti

Rispecchia la configurazione del tuo devcontainer nelle pipeline CI/CD per assicurare che gli ambienti di sviluppo e produzione corrispondano.

Risorse correlate