window.pipedriveLeadboosterConfig = { base: 'leadbooster-chat.pipedrive.com', companyId: 11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', version: 2, } ;(function () { var w = finestra if (w.LeadBooster) { console.warn('LeadBooster esiste già') } else { w.LeadBooster = { q: [], on: function (n, h) { this.q.push({ t: 'o', n: n, h: h }) }, trigger: function (n) { this.q.push({ t: 't', n: n }) }, } } })() Via indolore alla WSL 2 con Docker - The Codest
The Codest
  • Chi siamo
  • Servizi
    • Sviluppo di software
      • Sviluppo Frontend
      • Sviluppo backend
    • Staff Augmentation
      • Sviluppatori Frontend
      • Sviluppatori backend
      • Ingegneri dei dati
      • Ingegneri del cloud
      • Ingegneri QA
      • Altro
    • Consulenza
      • Audit e consulenza
  • Industrie
    • Fintech e banche
    • E-commerce
    • Adtech
    • Tecnologia della salute
    • Produzione
    • Logistica
    • Automotive
    • IOT
  • Valore per
    • CEO
    • CTO
    • Responsabile della consegna
  • Il nostro team
  • Case Studies
  • Sapere come
    • Blog
    • Incontri
    • Webinar
    • Risorse
Carriera Contattate
  • Chi siamo
  • Servizi
    • Sviluppo di software
      • Sviluppo Frontend
      • Sviluppo backend
    • Staff Augmentation
      • Sviluppatori Frontend
      • Sviluppatori backend
      • Ingegneri dei dati
      • Ingegneri del cloud
      • Ingegneri QA
      • Altro
    • Consulenza
      • Audit e consulenza
  • Valore per
    • CEO
    • CTO
    • Responsabile della consegna
  • Il nostro team
  • Case Studies
  • Sapere come
    • Blog
    • Incontri
    • Webinar
    • Risorse
Carriera Contattate
Freccia indietro TORNA INDIETRO
2020-01-21
Sviluppo di software

Via indolore a WSL 2 con Docker

Lukasz Kolko

Con l'introduzione del Windows Subsystem for Linux (WSL), Microsoft ha dato la possibilità agli sviluppatori di eseguire un ambiente GNU/Linux direttamente su Windows, senza modifiche, senza l'overhead di una macchina virtuale. Si tratta di un'ottima soluzione perché molti sviluppatori utilizzano un sistema per la programmazione e un altro per l'intrattenimento.

Il WSL è ancora in fase di sviluppo, ma al momento è adatto per i moderni sviluppo softwaresia nella prima che nella seconda versione. Sfogliando i problemi e le domande riportate su Internet, la maggior parte di essi sembra riguardare l'integrazione di WSL con Docker, soprattutto quando si tratta di passare da WSL 1 a WSL 2.

Questo articolo dissiperà tutte le ambiguità e vi aiuterà a superare questo processo in modo indolore. Se non avete WSL 1 e volete avere WSL 2 con Docker, potete passare direttamente all'ultimo capitolo.

Che cosa otterrete?

- Il vero kernel Linux stabile più recente (messo a punto da Microsoft). WSL 1 dispone di un'interfaccia kernel compatibile con Linux senza il kernel Linux codice.

- Aumento delle prestazioni di I/O dei file. Fino a 20 volte più veloce rispetto a WSL 1 quando si scompatta una tarball zippata, circa 2-5 volte più veloce quando si usa clone git, installare npm e cmake su vari progetti.

- Compatibilità completa con le chiamate di sistema. I binari Linux utilizzano le chiamate di sistema per eseguire molte funzioni, come l'accesso ai file, la richiesta di memoria, la creazione di processi e molto altro. Mentre WSL 1 utilizzava un livello di traduzione costruito dal programma WSL squadraWSL 2 include il proprio kernel Linux con piena compatibilità con le chiamate di sistema.

- File memorizzati in una partizione ext4 nativa su un disco virtuale.

- Un modo molto semplice per integrarsi con Docker.

Credo che per la maggior parte degli utenti le prestazioni dell'IO dei file e la facile integrazione con docker siano ragioni sufficienti.

Andiamo!

Presumo che abbiate l'ultima versione stabile di Windows 10 Pro. Per quanto riguarda oggi, si tratta della versione 1909.

Unitevi agli insider di Windows

Attualmente, WSL 2 è disponibile solo per Windows 10 nell'anello lento degli insider. Per quanto ne so, la versione stabile dovrebbe essere disponibile a maggio 2020 (release 20H1). Lo slow ring è una soluzione abbastanza sicura per gli utenti che vogliono avere nuove funzionalità un po' prima, già pre-testate dagli utenti del fast ring. L'anello lento riceve aggiornamenti di sistema fino a una o due volte al mese. Potete leggere le modifiche al rilascio per gli insider nel documento di Microsoft chiamato Hub di volo.

Per partecipare, è sufficiente seguire il sito ufficiale di Microsoft guida. È molto semplice e richiede circa 15 minuti senza perdere alcun dato personale.

Aggiornamento WSL 1 a WSL 2

Segui il sito ufficiale guida. È anche molto semplice, un paio di comandi di shell ed ecco fatto! A seconda di quanto era esteso il vostro Linux in WSL 1, questa operazione potrebbe richiedere un po' di tempo. Sfortunatamente, Microsoft non ha inserito una barra di avanzamento o informazioni sul tempo necessario, quindi siate pazienti.

Pulizia

Questa è la parte più importante per una corretta collaborazione tra WSL 2 e Docker. Dopo l'aggiornamento a WSL 2, molti utenti cercano di forzare la loro versione di Docker a collaborare, senza rendersi conto che il team di Docker, specialmente per WSL 2, ha preparato una release che farà tutto per noi. Questo è l'ultimo rilascio della versione Docker Edge (il loro nome beta) - "Docker Desktop WSL 2 backend". Questa versione, 2.1.7.0, è ben rifinita ed è una candidata per la prossima versione stabile.

Gli utenti che non avevano WSL 1 o che hanno appena installato una nuova versione di WSL 2 sono fortunati e possono passare immediatamente all'ultimo capitolo.

Se non si è pulito Docker (del tutto o correttamente) e non si è installata la versione corretta di Docker per WSL 2, si possono riscontrare alcuni errori comuni, ad es, Impossibile connettersi al demone Docker all'indirizzo tcp://localhost:2375", "Il demone Docker è in esecuzione?ecc. Nella maggior parte dei casi, si perde tempo se non si sa che è necessario adottare un nuovo approccio per cercare di risolvere questi errori. Per farlo, è necessario innanzitutto rimuovere completamente Docker da WSL e da Windows, un passo non scontato.

L'esempio più comune di resti non rimossi è il vecchio approccio di Docker per impostare la variabile d'ambiente DOCKER_HOST=tcp://localhost:2375 sotto WSL 1 per la collaborazione con l'opzione Docker di Windows Esporre il demone su tcp://localhost:2375 senza TLS.

Come rimuovere completamente Docker da WSL (Ubuntu)?

  1. Come il sito ufficiale di Docker documenti dire:

sudo apt-get remove docker docker-engine docker.io containerd runc

Di sicuro, è possibile aggiungere a questo elenco docker-ce e docker-ce-cli.

  1. Identificare tutti i pacchetti docker che si possiedono con dpkg -l | grep -i docker e rimuoverli se esistono ancora.
  2. Rimuovere tutti i residui:
sudo rm -rf /var/lib/docker /etc/docker /etc/apparmor.d/docker /var/run/docker.sock /usr/local/bin/docker-compose /etc/docker

sudo groupdel docker ~/.docker

  1. Questo passaggio è riservato agli utenti avanzati, quindi fate attenzione. Probabilmente non è necessario farlo.

Trova tutti docker le occorrenze delle parole e rimuovere quelle di cui si è certi.

sudo find / -nome "*docker*"

  1. Controllare il contenuto di tutti i file qui sotto per docker occorrenze come ad esempio la variabile d'ambiente DOCKER_HOST=tcp://localhost:2375.

È possibile modificare questi file con l'editor Nano, nano ~/.bashrco Visual Studio Code, codice ~/.bashrc.

~/.bashrc
~/.bash_aliases
~/.bash_profile
~/.bash_login
~/.profilo
/etc/bash.bashrc
/etc/profilo

Come rimuovere completamente Docker da Windows?

  1. Disinstallare in modo normale con Windows Applicazioni e funzioni pannello.
  2. Rimuovere tutti i sottostanti, se esistenti:
C:ProgrammiDocker
C:ProgrammiDatiDockerDesktop
C:Utenti[NOMEUTENTE].docker
C:Utenti[NOMEUTENTE]AppDataLocalDocker
C:Utenti[NOMEUTENTE]AppDataRoamingDocker
C:Users[USERNAME]AppDataRoamingDocker Desktop

Cosa c'è dopo?

Installate l'ultima versione di Docker Desktop Edge da qui e seguire i passi del sito ufficiale documenti. Si tratta di pochi clic.

Se tutto è andato bene, si dovrebbe avere l'output di wsl -l -v come questo:

  NOME STATO VERSIONE
  Ubuntu-18.04 In esecuzione 2
  docker-desktop In esecuzione 2
  docker-desktop-data In esecuzione 2

Questo è tutto. Docker ha creato i suoi contenitori WSL docker-desktop e docker-desktop-dati. Alcuni dei tutorial o dei consigli disponibili possono creare confusione perché questa volta non si dovrebbe installare o configurare nulla di relativo a Docker nella propria distribuzione WSL Linux. È molto importante ricordare. Dopo la pulizia, dovrebbe funzionare subito bene.

Inoltre...

L'impostazione di WSL 2 con Docker può essere un processo indolore con pochi semplici passaggi. Iniziate aggiornando elenchi di pacchetti utilizzando il comando "sudo apt-get update" per assicurarsi di avere le informazioni sulla versione più recente. Risolvere eventuali dipendenze mancanti con "sudo apt-get install -y build-essential" per un'installazione senza problemi. Installare Motore Docker con "sudo apt-get install -y motore docker" per creare, eseguire e gestire i container senza fatica. Eseguite "sudo docker run" seguito dal nome dell'immagine per lanciare i contenitori. Per mantenere l'ambiente ottimizzato, eseguire periodicamente "sudo docker system prune" per rimuovere i contenitori inutilizzati e liberare spazio su disco. Grazie a questi passaggi, potrete godere della perfetta integrazione di WSL 2 e Docker per una containerizzazione efficiente nel vostro flusso di lavoro di sviluppo.

Articoli correlati

Sviluppo di software

Costruire applicazioni web a prova di futuro: le intuizioni del team di esperti di The Codest

Scoprite come The Codest eccelle nella creazione di applicazioni web scalabili e interattive con tecnologie all'avanguardia, offrendo esperienze utente senza soluzione di continuità su tutte le piattaforme. Scoprite come la nostra esperienza favorisce la trasformazione digitale e il business...

IL CANCRO
Sviluppo di software

Le 10 principali aziende di sviluppo software con sede in Lettonia

Scoprite le migliori aziende di sviluppo software della Lettonia e le loro soluzioni innovative nel nostro ultimo articolo. Scoprite come questi leader tecnologici possono aiutarvi a migliorare la vostra attività.

thecodest
Soluzioni per aziende e scaleup

Essenziali di sviluppo software Java: Guida all'outsourcing di successo

Esplorate questa guida essenziale sullo sviluppo di software Java con successo outsourcing per migliorare l'efficienza, accedere alle competenze e guidare il successo del progetto con The Codest.

thecodest
Sviluppo di software

La guida definitiva all'outsourcing in Polonia

L'aumento di outsourcing in Polonia è guidato dai progressi economici, educativi e tecnologici, che favoriscono la crescita dell'IT e un clima favorevole alle imprese.

IlCodesto
Soluzioni per aziende e scaleup

Guida completa agli strumenti e alle tecniche di audit IT

Gli audit IT garantiscono sistemi sicuri, efficienti e conformi. Per saperne di più sulla loro importanza, leggete l'articolo completo.

The Codest
Jakub Jakubowicz CTO e cofondatore

Iscrivetevi alla nostra knowledge base e rimanete aggiornati sulle competenze del settore IT.

    Chi siamo

    The Codest - Società internazionale di sviluppo software con centri tecnologici in Polonia.

    Regno Unito - Sede centrale

    • Ufficio 303B, 182-184 High Street North E6 2JA
      Londra, Inghilterra

    Polonia - Poli tecnologici locali

    • Parco uffici Fabryczna, Aleja
      Pokoju 18, 31-564 Cracovia
    • Ambasciata del cervello, Konstruktorska
      11, 02-673 Varsavia, Polonia

      The Codest

    • Casa
    • Chi siamo
    • Servizi
    • Case Studies
    • Sapere come
    • Carriera
    • Dizionario

      Servizi

    • Consulenza
    • Sviluppo di software
    • Sviluppo backend
    • Sviluppo Frontend
    • Staff Augmentation
    • Sviluppatori backend
    • Ingegneri del cloud
    • Ingegneri dei dati
    • Altro
    • Ingegneri QA

      Risorse

    • Fatti e miti sulla collaborazione con un partner esterno per lo sviluppo di software
    • Dagli Stati Uniti all'Europa: Perché le startup americane decidono di trasferirsi in Europa
    • Confronto tra gli hub di sviluppo Tech Offshore: Tech Offshore Europa (Polonia), ASEAN (Filippine), Eurasia (Turchia)
    • Quali sono le principali sfide di CTO e CIO?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Condizioni di utilizzo del sito web

    Copyright © 2025 di The Codest. Tutti i diritti riservati.

    it_ITItalian
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic jaJapanese ko_KRKorean es_ESSpanish nl_NLDutch etEstonian elGreek it_ITItalian