The Codest
  • O nás
  • Služby
    • Vývoj softwaru
      • Vývoj frontendů
      • Vývoj backendu
    • Staff Augmentation
      • Vývojáři frontendů
      • Vývojáři backendu
      • Datoví inženýři
      • Cloudoví inženýři
      • Inženýři QA
      • Další
    • To Advisory
      • Audit a poradenství
  • Odvětví
    • Fintech a bankovnictví
    • E-commerce
    • Adtech
    • Healthtech
    • Výroba
    • Logistika
    • Automobilový průmysl
    • IOT
  • Hodnota za
    • CEO
    • CTO
    • Manažer dodávek
  • Náš tým
  • Case Studies
  • Vědět jak
    • Blog
    • Setkání
    • Webové semináře
    • Zdroje
Kariéra Spojte se s námi
  • O nás
  • Služby
    • Vývoj softwaru
      • Vývoj frontendů
      • Vývoj backendu
    • Staff Augmentation
      • Vývojáři frontendů
      • Vývojáři backendu
      • Datoví inženýři
      • Cloudoví inženýři
      • Inženýři QA
      • Další
    • To Advisory
      • Audit a poradenství
  • Hodnota za
    • CEO
    • CTO
    • Manažer dodávek
  • Náš tým
  • Case Studies
  • Vědět jak
    • Blog
    • Setkání
    • Webové semináře
    • Zdroje
Kariéra Spojte se s námi
Šipka zpět ZPĚT
2020-01-21
Vývoj softwaru

Bezproblémová cesta k WSL 2 pomocí nástroje Docker

Lukasz Kolko

Zavedením subsystému Windows Subsystem for Linux (WSL) poskytla společnost Microsoft vývojářům možnost spouštět prostředí GNU/Linux přímo v systému Windows, bez úprav a bez režie virtuálního počítače. To je skvělé řešení, protože mnoho vývojářů používá jeden systém pro programování a druhý pro zábavu.

WSL se stále vyvíjí, ale v současné době je vhodný pro moderní technologie. vývoj softwaru, a to jak v první, tak ve druhé verzi. Při procházení problémů a otázek nahlášených na internetu se zdá, že většina z nich se týká integrace WSL s Docker, zejména pokud jde o přechod z WSL 1 na WSL 2.

Tento článek rozptýlí všechny nejasnosti a pomůže vám projít tímto procesem bezbolestně. Pokud nemáte WSL 1 a chcete mít WSL 2 s Dockerem, můžete přejít rovnou na poslední kapitolu.

Co tím získáte?

- Skutečné nejnovější stabilní jádro Linuxu (vyladěné společností Microsoft). WSL 1 má rozhraní jádra kompatibilní s Linuxem bez linuxového jádra. kód.

- Zvýšení výkonu IO souborů. Až 20x rychlejší v porovnání s WSL 1 při rozbalování zazipovaného tarballu, přibližně 2-5x rychlejší při použití WSL 1. git clone, npm install a cmake na různých projektech.

- Plná kompatibilita systémových volání. Binární soubory Linuxu používají systémová volání k provádění mnoha funkcí, jako je přístup k souborům, požadavek na paměť, vytváření procesů a mnoho dalších. Zatímco WSL 1 používal překladovou vrstvu vytvořenou pomocí WSL tým, WSL 2 obsahuje vlastní jádro Linux s plnou kompatibilitou systémových volání.

- Soubory uložené v nativním oddílu ext4 na virtuálním disku.

- Velmi snadný způsob integrace s Dockerem.

Myslím, že pro většinu uživatelů je výkon IO souborů a snadná integrace dockeru dostatečným důvodem.

Jdeme na to!

Předpokládám, že máte nejnovější stabilní verzi systému Windows 10 Pro. Pokud jde o dnešek, jedná se o verzi 1909.

Připojte se k zasvěceným uživatelům systému Windows

V současné době je WSL 2 k dispozici pouze pro Windows 10 v pomalém kruhu zasvěcených. Pokud vím, stabilní verze by měla být k dispozici v květnu 2020 (vydání 20H1). Pomalý prstenec je poměrně bezpečné řešení pro uživatele, kteří chtějí mít nové funkce o něco dříve, již předem otestované uživateli rychlého prstence. Pomalý prstenec dostává aktualizace systému až jednou nebo dvakrát měsíčně. O změnách v insiderském vydání si můžete přečíst v dokumentu společnosti Microsoft s názvem Letové centrum.

Chcete-li se připojit, stačí sledovat oficiální stránky společnosti Microsoft průvodce. Je to velmi snadné a zabere to asi 15 minut bez ztráty osobních údajů.

Upgrade WSL 1 na WSL 2

Sledujte oficiální průvodce. Je to také velmi snadné, pár příkazů shellu a je to! V závislosti na tom, jak rozsáhlý byl váš Linux pod WSL 1, to může chvíli trvat. Microsoft bohužel neumístil ukazatel průběhu ani informaci o potřebném čase, takže buďte trpěliví.

Úklid

To je nejdůležitější část pro správnou spolupráci WSL 2 a Dockeru. Po přechodu na WSL 2 se mnoho uživatelů snaží přinutit svou verzi Dockeru ke spolupráci, aniž by si uvědomili, že tým Dockeru, speciálně pro WSL 2, připravil verzi, která udělá vše pro nás. Jedná se o poslední vydání verze Docker Edge (jejich beta název) - "Docker Desktop WSL 2 backend". Tato verze, 2.1.7.0, je dobře vyladěná a je kandidátem na nadcházející stabilní vydání.

Uživatelé, kteří neměli WSL 1 nebo si právě nainstalovali čerstvou verzi WSL 2, mají štěstí a mohou okamžitě přeskočit na poslední kapitolu.

Pokud jste Docker nevyčistili (vůbec nebo správně) a nenainstalovali jste správnou verzi Dockeru pro WSL 2, můžete se setkat s některými běžnými chybami, např., Cannot connect to the Docker daemon at tcp://localhost:2375", "Je spuštěn démon Docker?, atd. Ve většině případů ztratíte čas, pokud nebudete vědět, že při pokusu o vyřešení těchto chyb musíte zvolit nový přístup. Abyste to mohli udělat, musíte nejprve zcela odstranit Docker z WSL a Windows, což není samozřejmý krok.

Nejčastějším příkladem neodstraněných pozůstatků je starý přístup Dockeru k nastavení proměnné prostředí. DOCKER_HOST=tcp://localhost:2375 pod WSL 1 pro spolupráci s možností Windows Docker Vystavení démona na tcp://localhost:2375 bez TLS.

Jak úplně odstranit Docker z WSL (Ubuntu)?

  1. Jako oficiální Docker dokumenty říkají:

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

Určitě můžete do tohoto seznamu přidat docker-ce a docker-ce-cli.

  1. Identifikujte všechny balíčky dockeru, které máte pomocí dpkg -l | grep -i docker a odstranit, pokud ještě nějaké existují.
  2. Odstraňte všechny zbytky:
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. Tento krok je určen pro pokročilé uživatele, proto buďte opatrní. Pravděpodobně jej nemusíte provádět.

Najít všechny docker výskytů slov a odstraňte ty, u kterých jste si jisti.

sudo find / -name "*docker*"

  1. Zkontrolujte obsah všech níže uvedených souborů, zda docker výskyty jako např. proměnná prostředí DOCKER_HOST=tcp://localhost:2375.

Tyto soubory můžete upravovat pomocí editoru Nano, nano ~/.bashrcnebo Visual Studio Code, kód ~/.bashrc.

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

Jak úplně odstranit Docker ze systému Windows?

  1. Odinstalujte systém Windows běžným způsobem Aplikace a funkce panel.
  2. Odstraňte všechny níže uvedené položky, pokud existují:
C:Program FilesDocker
C:ProgramDataDockerDesktop
C:Users[USERNAME].docker
C:Users[USERNAME]AppDataLocalDocker
C:Users[USERNAME]AppDataRoamingDocker
C:Users[USERNAME]AppDataRoamingDocker Desktop

Co bude dál?

Nainstalujte si nejnovější verzi aplikace Docker Desktop Edge ze stránek zde a postupujte podle pokynů z oficiální dokumenty. Ve skutečnosti jde o několik kliknutí.

Pokud vše proběhne v pořádku, měli byste mít výstup ze systému wsl -l -v jako je tento:

  NÁZEV STAV VERZE
  Ubuntu-18.04 Běží 2
  docker-desktop Běží 2
  docker-desktop-data Běží 2

To je vše. Docker vytvořil vlastní kontejnery WSL docker-desktop a docker-desktop-data. Některé z dostupných návodů nebo rad mohou být matoucí, protože tentokrát. pod distribucí WSL Linux byste neměli instalovat ani konfigurovat nic, co souvisí s Dockerem.. Je velmi důležité mít na paměti. Po vyčištění by měl ihned dobře fungovat.

Navíc.

Nastavení WSL 2 pomocí nástroje Docker může být bezbolestný proces s několika jednoduchými kroky. Začněte aktualizací seznamy balíčků pomocí příkazu "sudo apt-get update", abyste se ujistili, že máte informace o nejnovější verzi. Případné chybějící závislosti vyřešte pomocí "sudo apt-get install -y build-essential" pro hladkou instalaci. Instalace Docker Engine s "sudo apt-get install -y docker-engine", abyste mohli snadno vytvářet, spouštět a spravovat kontejnery. Pro spuštění kontejnerů spusťte příkaz "sudo docker run" následovaný názvem obrazu. Chcete-li udržet své prostředí optimalizované, pravidelně spouštějte příkaz "sudo docker system prune", abyste odstranili nepoužívané kontejnery a uvolnili místo na disku. Díky těmto krokům můžete využívat bezproblémovou integraci WSL 2 a Dockeru pro efektivní kontejnerizaci v pracovním postupu vývoje.

Související články

Ilustrace zdravotnické aplikace pro chytré telefony s ikonou srdce a rostoucím zdravotním grafem, označená logem The Codest, která představuje digitální zdraví a řešení HealthTech.
Vývoj softwaru

Softwarové vybavení pro zdravotnictví: a případy použití

Nástroje, na které se dnes zdravotnické organizace spoléhají, se v ničem nepodobají papírovým kartám z doby před desítkami let. zdravotnický software dnes podporuje zdravotnické systémy, péči o pacienty a moderní poskytování zdravotní péče v klinických a...

NEJKRÁSNĚJŠÍ
Abstraktní ilustrace klesajícího sloupcového grafu se stoupající šipkou a zlatou mincí symbolizující efektivitu nákladů nebo úspory. V levém horním rohu se zobrazuje logo The Codest se sloganem "In Code We Trust" na světle šedém pozadí.
Vývoj softwaru

Jak rozšířit tým vývojářů bez ztráty kvality produktu

Zvětšujete svůj vývojový tým? Zjistěte, jak růst, aniž byste museli obětovat kvalitu produktu. Tento průvodce se zabývá příznaky, že je čas na škálování, strukturou týmu, najímáním zaměstnanců, vedením a nástroji - a také tím, jak může The Codest...

NEJKRÁSNĚJŠÍ
Vývoj softwaru

Vytváření webových aplikací odolných vůči budoucnosti: postřehy týmu odborníků The Codest

Zjistěte, jak společnost The Codest vyniká při vytváření škálovatelných, interaktivních webových aplikací pomocí nejmodernějších technologií, které poskytují bezproblémové uživatelské prostředí na všech platformách. Zjistěte, jak naše odborné znalosti podporují digitální transformaci a obchodní...

NEJKRÁSNĚJŠÍ
Vývoj softwaru

10 nejlepších lotyšských společností zabývajících se vývojem softwaru

V našem nejnovějším článku se dozvíte o nejlepších lotyšských společnostech zabývajících se vývojem softwaru a jejich inovativních řešeních. Zjistěte, jak mohou tito technologičtí lídři pomoci pozvednout vaše podnikání.

thecodest
Podniková a škálovací řešení

Základy vývoje softwaru v jazyce Java: A Guide to Outsourcing Successfully

Prozkoumejte tuto základní příručku o úspěšném vývoji softwaru outsourcing Java, abyste zvýšili efektivitu, získali přístup k odborným znalostem a dosáhli úspěchu projektu s The Codest.

thecodest

Přihlaste se k odběru naší znalostní databáze a získejte aktuální informace o odborných znalostech z oblasti IT.

    O nás

    The Codest - Mezinárodní společnost zabývající se vývojem softwaru s technologickými centry v Polsku.

    Spojené království - ústředí

    • Kancelář 303B, 182-184 High Street North E6 2JA
      Londýn, Anglie

    Polsko - Místní technologická centra

    • Kancelářský park Fabryczna, Aleja
      Pokoju 18, 31-564 Krakov
    • Brain Embassy, Konstruktorska
      11, 02-673 Varšava, Polsko

      The Codest

    • Home
    • O nás
    • Služby
    • Case Studies
    • Vědět jak
    • Kariéra
    • Slovník

      Služby

    • To Advisory
    • Vývoj softwaru
    • Vývoj backendu
    • Vývoj frontendů
    • Staff Augmentation
    • Vývojáři backendu
    • Cloudoví inženýři
    • Datoví inženýři
    • Další
    • Inženýři QA

      Zdroje

    • Fakta a mýty o spolupráci s externím partnerem pro vývoj softwaru
    • Z USA do Evropy: Proč se americké startupy rozhodly přesídlit do Evropy?
    • Srovnání technických vývojových center v zahraničí: Tech Offshore Evropa (Polsko), ASEAN (Filipíny), Eurasie (Turecko)
    • Jaké jsou hlavní výzvy CTO a CIO?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Website terms of use

    Copyright © 2026 by The Codest. Všechna práva vyhrazena.

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