(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': data().getTime(),įvykis:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-5LHNRP9'); Neskausmingas būdas WSL 2 su "Docker" - The Codest
The Codest
  • Apie mus
  • Paslaugos
    • Programinės įrangos kūrimas
      • Priekinės dalies kūrimas
      • Galinės dalies kūrimas
    • Staff Augmentation
      • Priekinės dalies kūrėjai
      • Atgalinės versijos kūrėjai
      • Duomenų inžinieriai
      • Debesų inžinieriai
      • QA inžinieriai
      • Kita
    • Patariamoji tarnyba
      • Auditas ir konsultacijos
  • Pramonės šakos
    • Fintech ir bankininkystė
    • E-commerce
    • Adtech
    • Sveikatos technologijos
    • Gamyba
    • Logistika
    • Automobiliai
    • IOT
  • Vertė už
    • CEO
    • CTO
    • Pristatymo vadybininkas
  • Mūsų komanda
  • Case Studies
  • Sužinokite, kaip
    • Tinklaraštis
    • Susitikimai
    • Interneto seminarai
    • Ištekliai
Karjera Susisiekite su mumis
  • Apie mus
  • Paslaugos
    • Programinės įrangos kūrimas
      • Priekinės dalies kūrimas
      • Galinės dalies kūrimas
    • Staff Augmentation
      • Priekinės dalies kūrėjai
      • Atgalinės versijos kūrėjai
      • Duomenų inžinieriai
      • Debesų inžinieriai
      • QA inžinieriai
      • Kita
    • Patariamoji tarnyba
      • Auditas ir konsultacijos
  • Vertė už
    • CEO
    • CTO
    • Pristatymo vadybininkas
  • Mūsų komanda
  • Case Studies
  • Sužinokite, kaip
    • Tinklaraštis
    • Susitikimai
    • Interneto seminarai
    • Ištekliai
Karjera Susisiekite su mumis
Atgal rodyklė GRĮŽTI ATGAL
2020-01-21
Programinės įrangos kūrimas

Nesudėtingas būdas pereiti prie WSL 2 su "Docker

Lukasz Kolko

Pristatydama "Windows" posistemę "Linux" (WSL), "Microsoft" suteikė kūrėjams galimybę paleisti GNU/Linux aplinką tiesiogiai "Windows" sistemoje, jos nemodifikuojant ir nenaudojant virtualios mašinos. Tai puikus sprendimas, nes daugelis kūrėjų vieną sistemą naudoja programavimui, o kitą - pramogoms.

WSL vis dar tobulinama, tačiau šiuo metu ji tinka šiuolaikinėms programinės įrangos kūrimas, tiek pirmojoje, tiek antrojoje versijoje. Peržiūrėjus internete pateiktas problemas ir klausimus, atrodo, kad dauguma jų yra susiję su WSL integravimu su "Docker", ypač kai reikia pereiti nuo WSL 1 prie WSL 2.

Šiame straipsnyje išsklaidysime visas dviprasmybes ir padėsime neskausmingai įveikti šį procesą. Jei neturite WSL 1 ir norite turėti WSL 2 su "Docker", galite pereiti tiesiai prie paskutinio skyriaus.

Ką laimėsite?

- Tikrasis naujausias stabilus "Linux" branduolys (suderintas "Microsoft"). WSL 1 turi su "Linux" suderinamą branduolio sąsają be "Linux" branduolio kodas.

- Padidintas failų IO našumas. Iki 20 kartų greičiau, palyginti su WSL 1, išpakuojant užpakuotą tarball, maždaug 2-5 kartus greičiau, kai naudojamas git klonas, npm įdiegti ir cmake įvairiuose projektuose.

- Visiškas sistemos skambučių suderinamumas. "Linux" dvejetainės programos naudoja sistemos skambučius daugeliui funkcijų atlikti, pvz., kreiptis į failus, prašyti atminties, kurti procesus ir kt. Nors WSL 1 naudojo vertimo sluoksnį, sukurtą WSL komanda, WSL 2 turi savo "Linux" branduolį su visišku suderinamumu su sistemos skambučiais.

- Failai, saugomi virtualiojo disko gimtajame ext4 skirsnyje.

- Labai paprastas būdas integruoti su "Docker".

Manau, kad daugumai naudotojų failų IO našumas ir lengva "Docker" integracija skamba kaip pakankamos priežastys.

Pirmyn!

Darau prielaidą, kad turite naujausią stabilią "Windows 10 Pro" versiją. Šiandien tai yra 1909 versija.

Prisijunkite prie "Windows" vidinių naudotojų

Šiuo metu ’WSL 2" galima naudoti tik "Windows 10" vidinių naudotojų lėtame žiede. Kiek žinau, stabili versija turėtų būti prieinama 2020 m. gegužę (20H1 versija). Lėtasis žiedas yra gana saugus sprendimas naudotojams, kurie nori turėti naujas funkcijas šiek tiek anksčiau, jau iš anksto išbandytas greitojo žiedo naudotojų. Lėtame žiede sistemos atnaujinimai gaunami iki vieno ar dviejų kartų per mėnesį. Apie vidinių leidinių pakeitimus galite perskaityti "Microsoft" dokumente, pavadintame Skrydžių centras.

Norėdami prisijungti, tiesiog sekite oficialią "Microsoft vadovas. Tai labai paprasta ir užtrunka apie 15 minučių, neprarandant jokių asmeninių duomenys.

WSL 1 atnaujinimas į WSL 2

Sekite oficialų vadovas. Tai taip pat labai paprasta, pora shell komandų ir štai jums! Priklausomai nuo to, kokia buvo jūsų "Linux" pagal WSL 1, tai gali užtrukti šiek tiek laiko. Deja, "Microsoft" nepateikė pažangos juostos ar informacijos apie reikiamą laiką, todėl tiesiog būkite kantrūs.

Valymas

Tai yra svarbiausia dalis, užtikrinanti tinkamą "WSL 2" ir "Docker" bendradarbiavimą. Atnaujinę WSL 2, daugelis naudotojų bando priversti savo "Docker" versiją bendradarbiauti nesuprasdami, kad "Docker team", specialiai skirta WSL 2, parengė versiją, kuri padarys viską, kad mus. Tai paskutinis “Docker Edge” versijos (jų beta pavadinimas) - "Docker Desktop WSL 2 backend" - išleidimas. Ši versija, 2.1.7.0, yra gerai nušlifuota ir yra būsimos stabilios versijos kandidatė.

Vartotojams, kurie neturėjo "WSL 1" arba ką tik įsidiegė naują "WSL 2" versiją, pasisekė ir jie gali iš karto pereiti prie paskutinio skyriaus.

Jei neišvalėte "Docker" (visiškai arba tinkamai) ir neįdiegėte tinkamos "Docker" versijos, skirtos WSL 2, galite susidurti su kai kuriomis įprastomis klaidomis, pvz, Cannot connect to the Docker daemon at tcp://localhost:2375“, “Is the Docker daemon running, ir t. t. Daugeliu atvejų prarasite laiko, jei nežinosite, kad bandydami išspręsti šias klaidas turite laikytis naujo požiūrio. Norėdami tai padaryti, pirmiausia turite visiškai pašalinti "Docker" iš WSL ir "Windows", o tai nėra akivaizdus žingsnis.

Dažniausias nepašalintų liekanų pavyzdys yra senasis "Docker" metodas, kai nustatomas aplinkos kintamasis DOCKER_HOST=tcp://localhost:2375 pagal WSL 1 bendradarbiaujant su "Windows Docker" parinktimi Demono eksponavimas tcp://localhost:2375 be TLS.

Kaip visiškai pašalinti "Docker" iš WSL (Ubuntu)?

  1. Kaip oficialus "Docker dokumentai sakyti:

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

Šį sąrašą tikrai galite papildyti docker-ce ir docker-ce-cli.

  1. Nustatykite visus "Docker" paketus, kuriuos turite su dpkg -l | grep -i docker ir pašalinkite, jei tokių vis dar yra.
  2. Pašalinkite visus likučius:
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. Šis veiksmas skirtas pažengusiems naudotojams, todėl būkite atsargūs. Tikriausiai jums nereikia jo atlikti.

Rasti visus "docker" žodžių pasikartojimus ir pašalinkite tuos, dėl kurių esate tikri.

sudo find / -name “*docker*”

  1. Patikrinkite visų toliau pateiktų failų turinį "docker" įvykiai, pvz., aplinkos kintamasis DOCKER_HOST=tcp://localhost:2375.

Šiuos failus galite redaguoti naudodami "Nano" redaktorių, nano ~/.bashrc, arba "Visual Studio Code", kodas ~/.bashrc.

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

Kaip visiškai pašalinti "Docker" iš "Windows"?

  1. Pašalinti įprastu būdu naudojant "Windows Programėlės ir funkcijos panelė.
  2. Pašalinkite visus toliau nurodytus elementus, jei tokių yra:
C:Program FilesDocker
C:ProgramosDataDockerDesktop
C:Users[USERNAME].docker
C:Users[USERNAME]AppDataLocalDocker
C:Users[USERNAME]AppDataRoamingDocker
C:Users[USERNAME]AppDataRoamingDocker Desktop

Kas toliau?

Įdiekite naujausią "Docker Desktop Edge" versiją iš čia ir atlikite oficialioje dokumentai. Iš tikrųjų tereikia kelių paspaudimų.

Jei viskas vyksta gerai, turėtumėte gauti išvestį iš wsl -l -v panašiai:

  PAVADINIMAS BŪSENA VERSIJA
  Ubuntu-18.04 Bėga 2
  docker-desktop Vykdoma 2
  docker-desktop-data Vykdoma 2

Tai viskas. "Docker" sukūrė savo WSL konteinerius docker-desktop ir docker-desktop-data. Kai kurie turimi vadovėliai ar patarimai gali būti painūs, nes šį kartą neturėtumėte diegti ar konfigūruoti nieko, kas susiję su "Docker", savo WSL "Linux" distribucijoje.. Labai svarbu prisiminti. Po valymo jis turėtų iš karto gerai veikti.

Be to.

"WSL 2" nustatymas naudojant "Docker" gali būti nesudėtingas procesas, atliekamas keliais paprastais veiksmais. Pradėkite atnaujindami paketų sąrašai naudodami komandą “Sudo apt-get update”, kad įsitikintumėte, jog turite naujausios versijos informaciją. Išspręskite bet kokias trūkstamas priklausomybes naudodami “Sudo apt-get install -y build-essential”, kad diegimas būtų sklandus. Įdiekite "Docker" variklis su “Sudo apt-get install -y docker-engine”, kad galėtumėte lengvai kurti, paleisti ir valdyti konteinerius. Norėdami paleisti konteinerius, atlikite “sudo docker run”, po kurio įrašykite atvaizdo pavadinimą. Kad aplinka būtų optimizuota, periodiškai paleiskite “sudo docker system prune”, kad pašalintumėte nenaudojamus konteinerius ir atlaisvintumėte vietos diske. Atlikę šiuos veiksmus galite mėgautis sklandžia WSL 2 ir "Docker" integracija, kad galėtumėte efektyviai naudoti konteinerius kūrimo procese.

Susiję straipsniai

Išmaniojo telefono sveikatos priežiūros programėlės su širdies piktograma ir kylančia sveikatos diagrama, pažymėtos The Codest logotipu, iliustracija, vaizduojanti skaitmeninės sveikatos ir sveikatos technologijų sprendimus.
Programinės įrangos kūrimas

Sveikatos priežiūros programinė įranga: Sveikatos priežiūros paslaugos: tipai, naudojimo atvejai

Įrankiai, kuriais šiandien naudojasi sveikatos priežiūros organizacijos, nė iš tolo neprimena prieš kelis dešimtmečius naudotų popierinių kortelių. sveikatos priežiūros programinė įranga dabar padeda sveikatos sistemoms, pacientų priežiūrai ir šiuolaikiniam sveikatos priežiūros paslaugų teikimui klinikinėse ir...

GERIAUSIAS
Abstrakti mažėjančios stulpelinės diagramos su kylančia rodykle ir auksine moneta, simbolizuojančia ekonomiškumą arba taupymą, iliustracija. Viršutiniame kairiajame viršutiniame kampe pavaizduotas The Codest logotipas ir šūkis "In Code We Trust" šviesiai pilkame fone.
Programinės įrangos kūrimas

Kaip padidinti savo Dev komandą neprarandant produkto kokybės

Didinate savo kūrėjų komandą? Sužinokite, kaip augti neprarandant produkto kokybės. Šiame vadove aptariami ženklai, kad atėjo laikas didinti komandą, komandos struktūra, įdarbinimas, vadovavimas ir įrankiai - ir kaip The Codest gali...

GERIAUSIAS
Programinės įrangos kūrimas

Sukurkite ateičiai atsparias žiniatinklio programas: The Codest ekspertų komandos įžvalgos

Sužinokite, kaip The Codest puikiai kuria keičiamo dydžio interaktyvias žiniatinklio programas, naudodama pažangiausias technologijas ir užtikrindama vientisą naudotojų patirtį visose platformose. Sužinokite, kaip mūsų patirtis skatina skaitmeninę transformaciją ir verslo...

GERIAUSIAS
Programinės įrangos kūrimas

10 geriausių Latvijoje įsikūrusių programinės įrangos kūrimo įmonių

Naujausiame mūsų straipsnyje sužinokite apie geriausias Latvijos programinės įrangos kūrimo įmones ir jų inovatyvius sprendimus. Sužinokite, kaip šie technologijų lyderiai gali padėti pakelti jūsų verslo lygį.

thecodest
Įmonių ir didinimo sprendimai

"Java" programinės įrangos kūrimo pagrindai: A Guide to outsourcing Outsourcing Successfully

Išnagrinėkite šį esminį vadovą, kaip sėkmingai outsourcing "Java" programinę įrangą kurti, kad padidintumėte efektyvumą, įgytumėte patirties ir sėkmingai įgyvendintumėte projektus su The Codest.

thecodest

Prenumeruokite mūsų žinių bazę ir būkite nuolat informuoti apie IT sektoriaus patirtį.

    Apie mus

    The Codest - tarptautinė programinės įrangos kūrimo bendrovė, turinti technologijų centrus Lenkijoje.

    Jungtinė Karalystė - būstinė

    • 303B biuras, 182-184 High Street North E6 2JA
      Londonas, Anglija

    Lenkija - vietiniai technologijų centrai

    • Fabryczna biurų parkas, Aleja
      Pokoju 18, 31-564 Krokuva
    • Brain Embassy, Konstruktorska
      11, 02-673 Varšuva, Lenkija

    The Codest

    • Pagrindinis
    • Apie mus
    • Paslaugos
    • Case Studies
    • Sužinokite, kaip
    • Karjera
    • Žodynas

    Paslaugos

    • Patariamoji tarnyba
    • Programinės įrangos kūrimas
    • Galinės dalies kūrimas
    • Priekinės dalies kūrimas
    • Staff Augmentation
    • Atgalinės versijos kūrėjai
    • Debesų inžinieriai
    • Duomenų inžinieriai
    • Kita
    • QA inžinieriai

    Ištekliai

    • Faktai ir mitai apie bendradarbiavimą su išoriniu programinės įrangos kūrimo partneriu
    • Iš JAV į Europą: Kodėl Amerikos startuoliai nusprendžia persikelti į Europą?
    • Technikos plėtros centrų užsienyje palyginimas: Tech Offshore Europa (Lenkija), ASEAN (Filipinai), Eurazija (Turkija)
    • Kokie yra svarbiausi CTO ir CIO iššūkiai?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Website terms of use

    Autorinės teisės © 2026 The Codest. Visos teisės saugomos.

    lt_LTLithuanian
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian es_ESSpanish nl_NLDutch etEstonian elGreek pt_PTPortuguese cs_CZCzech lvLatvian is_ISIcelandic lt_LTLithuanian