GNU/Linux >> Znalost Linux >  >> Panels >> Docker

Jak nastavit Docker v systému Windows pro Linux (WSL2) v systému Windows 10

O WSL2 jsem psal a mnohokrát jsou to nádherné zázraky. Jak se jeho vydání (pravděpodobně) blíží - v době psaní tohoto článku je na Windows Insider pomalu a rychle - chtěl jsem aktualizovat několik příspěvků. Blogoval jsem o pár skvělých věcech kolem WSL a Docker

  • Docker Desktop pro WSL 2 ještě těsněji integruje Windows 10 a Linux
  • Vzdálené ladění aplikace .NET Core Linux ve WSL2 ze sady Visual Studio v systému Windows
  • Super WSL (Windows Subsystem for Linux) tipy a triky, o kterých jste (nebo já) nevěděli, že jsou možné
  • Ruby on Rails v systému Windows není jen možný, je báječný pomocí WSL2 a VS Code
  • Snadno přesouvejte distribuce WSL mezi počítači se systémem Windows 10 pomocí importu a exportu!
  • Jaký je rozdíl mezi konzolí, terminálem a shellem?

Zde je malý HanselFAQ a některé zdroje.

Chci provozovat Linux na Windows

Určitě můžete použít HyperV nebo VirtualBox a spustit standardní virtuální stroj. Stáhněte si ISO a připojte jej a spusťte „čtverec ve čtverci“. Nebude to bez problémů integrováno do Windows – bude to jako ve filmu Počátek – ale je to časem prověřené.

Ještě lepší je nainstalovat WSL nebo WSL2. Pokud je váš Windows 10 trochu aktuální, bude to trvat maximálně 5–10 minut.

  • Jak nainstalovat WSL na Windows 10
    • WSL nezahrnuje linuxové jádro. Jeho přístup k systému souborů Linux je trochu pomalý, ale přistupuje k souborům Windows velmi rychle. Pokud používáte Cygwin, bude se vám to líbit, protože je to opravdu Linux, jen jádro je emulované.
  • Jak nainstalovat WSL2 na Windows 10
    • WSL2 dodává skutečné jádro Linuxu a jeho souborový systém Linux je 5x až 10x rychlejší než WSL. WSL2 používá malý obslužný virtuální počítač, který rozšiřuje jeho paměť a distribuce můžete spravovat pomocí příkazového řádku wsl.
    • Veškerou vývojovou práci provádějte zde a přitom stále používejte VS Code ve Windows. Je to úžasné. Podívejte se, jak si nastavím přátelství s WSL2, ŽIVĚ na YouTube.

Chci SSH do Linuxu z Windows

Existuje 15 let webových stránek, které vám říkají, abyste si nainstalovali Putty, ale možná to nebudete potřebovat. OpenSSH se dodává ve Windows 10 již více než dva roky. Můžete je přidat pomocí funkcí systému Windows, nebo pokud chcete, vezměte si vydání a vložte je do své PATH.

Můžete také dělat věci, jako je nastavení klíčů pro použití vestavěného OpenSSH systému Windows 10 k automatickému SSH do vzdáleného počítače se systémem Linux. Také rád nastavuji Signed Git Commits pomocí YubiKey NEO a GPG a Keybase ve Windows.

Potřebuji lepší terminál ve Windows

Nový Windows Terminál je pro vás. Stáhněte si Windows Terminal nyní zdarma. Je to open source. Poté můžete spustit Win64/Win32 ssh shora nebo spustit SSH libovolné distribuce Linuxu. Bavte se. Je čas.

POZNÁMKA:Už jste si stáhli Terminál, možná před chvílí? Dost se změnilo, že byste měli smazat svůj profiles.json a začít znovu.

Terminál Windows si můžete stáhnout z obchodu Microsoft Store nebo ze stránky vydání GitHubu. K dispozici je také neoficiální vydání Chocolatey. Pokud je to možné, doporučuji verzi Store.

Moje výzva a písma jsou ošklivá

Udělejte je hezkými. Zasloužíš si to nejlepší. Získejte CascadiaPL.ttf a PowerLine od Cascadia Code a připoutejte se. Získejte pěkný motiv a možná pozadí GIF.

Chci používat Docker ve Windows a chci, aby to nebylo na hovno

Překvapení, je to vlastně úžasné. Možná jste měli před několika lety problémy s Dockerem ve Windows a vzdali jste to, ale vraťte se. Ve Windows existuje obrovská (a fascinující) architektura Dockeru. Je to velmi pěkně integrované, pokud máte WSL2.

Pokud máte WSL2 nastaveno pěkně, tak si pořiďte Docker Desktop WSL2. Tato verze Dockeru pro Windows používá WSL2 jako svůj engine, který vám umožňuje sdílet kontext dockeru napříč Windows a Linuxem na stejném počítači! Jak výrobce zamýšlel!

WSL 2 představuje významnou architektonickou změnu, protože jde o úplné linuxové jádro vytvořené společností Microsoft, které umožňuje linuxovým kontejnerům běžet nativně bez emulace. S Docker Desktop spuštěným na WSL 2 mohou uživatelé využívat pracovní prostory Linuxu a vyhnout se nutnosti udržovat skripty sestavení pro Linux i Windows.

To tedy znamená

  1. Nainstalujte Windows 10 Insider Preview sestavení 19018 nebo vyšší
  2. Povolte funkci WSL 2 v systému Windows. Podrobné pokyny naleznete v dokumentaci společnosti Microsoft.
  3. Stáhněte si Docker Desktop Edge 2.1.6.0 nebo novější verzi.

Ujistěte se, že vaše výchozí instance WSL je WSL2. Můžete to udělat pomocí wsl -l -v a poté wsl --set-version  <distro> 2

V rámci Docker Desktop pro Windows pak musíte zkontrolovat dvě věci. Za prvé, používáte WSL2 jako svůj backend?

A pak, často zmeškané nastavení, zkontrolujte v části Zdroje | Integrace WSL a sdělte Dockeru, které distribuce WSL2 chcete použít pro přístup k Dockeru. Pokud dáváte pozor, můžete si všimnout, že Docker Desktop se vás pokouší vyzvat upozorněním v Centru akcí, ale můžete ho přehlédnout.

POZNÁMKA:Pokud jste používali dřívější technický náhled, možná máte další kontext Dockeru s názvem „wsl“. Chcete použít výchozí, nikoli WSL.

Není to intuitivní ani zřejmé a mohou se objevit podivné chyby, jako jsou tyto

docker wsl open //./pipe/docker_wsl: The system cannot find the file specified.

nebo

error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_wsl/v1.40/images/json?all=1: open //./pipe/docker_wsl: The system cannot find the file specified.

Můžete se podívat, zda máte další kontext z dřívějška, jako je níže. Ten "wsl" je starší (pokud ho máte) a chcete použít výchozí ve Windows i WSL2.

docker context ls
NAME DESCRIPTION DOCKER ENDPOINT KUBERNETES ENDPOINT
default * Current DOCKER_HOST based configuration npipe:////./pipe/docker_engine https://kubernetes.docker
wsl Docker daemon hosted in WSL 2 npipe:////./pipe/docker_wsl

Ve skutečnosti jsem to odstranil, abych se vyhnul záměně s docker context rm wsl .

Zde je Ubuntu na mém počítači s Windows

A tady je můj počítač s Windows. Všimněte si, že obrázky dockeru v obou případech vrátí stejný seznam. Jedná se o stejný backend Docker!

Chci kódovat ve VS Code na Windows, ale kompilovat na Linuxu

V tuto chvíli, jakmile vše nastavím, můžu jít na banány. Mohu dělat vývoj založený na kontejnerech, kde používám VS Code ke spouštění všech svých vývojářských nástrojů a sestavuji vnitřní kontejner...možná nikdy nenainstaluji Go nebo PHP nebo .NET Core. Je to všechno jen uvnitř kontejneru.

Oh, mimochodem, přihlaste se k odběru mého YouTube! Hodně tam o těchto věcech mluvím.

Sponzor: Couchbase poskytuje vývojářům výkon SQL s flexibilitou JSON. Začněte jej používat zdarma ještě dnes s technologiemi včetně Kubernetes, Java, .NET, JavaScript, Go a Python.


Docker
  1. Jak nainstalovat Docker na AlmaLinux / Rocky Linux

  2. Jak nastavit OpenCL pro GPU na Linuxu a Dockeru [Kompletní průvodce]

  3. Jak nastavit název okna v Linuxu

  1. Jak používat systemd-nspawn pro obnovu systému Linux

  2. Jak nastavit nebo změnit název hostitele systému v systému Linux

  3. Vysvětlení subsystému Windows pro Linux, WSL a WSL2

  1. Jak nainstalovat Docker na systém Fedora Linux

  2. Jak nainstalovat WordPress na Docker (Windows, MacOS a Linux)

  3. Jak nastavím velikost ukazatele myši X v subsystému Windows pro Linux