Zhvillimi me Docker në Nënsistemin Windows për Linux (WSL)

Zhvillimi me Docker në Nënsistemin Windows për Linux (WSL)

Për të punuar plotësisht me një projekt Docker në WSL, duhet të instaloni WSL 2. Në momentin e shkrimit, përdorimi i tij është i mundur vetëm si pjesë e pjesëmarrjes në programin Windows Insider (WSL 2 është i disponueshëm në versionet 18932 dhe më lart). Vlen gjithashtu të përmendet veçmas se versioni Windows 10 Pro kërkohet për të instaluar dhe konfiguruar Docker Desktop.

Hapat e parë

Pas bashkimit me programin Insider dhe instalimit të përditësimeve, duhet të instaloni një shpërndarje Linux (Ubuntu 18.04 në këtë shembull) dhe Docker Desktop me WSL 2 Tech Preview:

  1. Pamje teknike e Docker Desktop WSL 2
  2. Ubuntu 18.04 nga Windows Store

Në të dyja pikat ne ndjekim të gjitha udhëzimet e instalimit dhe konfigurimit.

Instalimi i shpërndarjes Ubuntu 18.04

Përpara se të ekzekutoni Ubuntu 18.04, duhet të aktivizoni Windows WSL dhe Windows Virtual Machine Platform duke ekzekutuar dy komanda në PowerShell:

  1. Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux (kërkon një rinisje të kompjuterit)
  2. Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

Më pas duhet të sigurohemi që do të përdorim WSL v2. Për ta bërë këtë, në terminalin WSL ose PowerShell, ekzekutoni komandat e mëposhtme:

  • wsl -l -v — shikoni se cili version është i instaluar aktualisht. Nëse 1, atëherë ne lëvizim më poshtë në listë
  • wsl --set-version ubuntu 18.04 2 - për të përditësuar në versionin 2
  • wsl -s ubuntu 18.04 — instaloni Ubuntu 18.04 si shpërndarjen e paracaktuar

Tani mund të nisni Ubuntu 18.04 dhe ta konfiguroni atë (specifikoni emrin e përdoruesit dhe fjalëkalimin).

Instalimi i Docker Desktop

Ndiqni udhëzimet gjatë procesit të instalimit. Kompjuteri do të kërkojë një rinisje pas instalimit dhe në fillimin e parë për të aktivizuar Hyper-V (që kërkon mbështetje për Windows 10 Pro).

Rëndësishme! Nëse Docker Desktop raporton bllokim nga muri i zjarrit, shkoni te cilësimet e antivirusit dhe bëni ndryshimet e mëposhtme në rregullat e murit të zjarrit (në këtë shembull, Kaspersky Total Security përdoret si antivirus):

  • Shkoni te Cilësimet -> Siguria -> Firewall -> Konfiguro rregullat e paketës -> Shërbimi Lokal (TCP) -> Ndrysho
  • Hiq portin 445 nga lista e porteve lokale
  • Mbaj

Pas fillimit të Docker Desktop, zgjidhni WSL 2 Tech Preview nga menyja e tij e kontekstit.

Zhvillimi me Docker në Nënsistemin Windows për Linux (WSL)

Në dritaren që hapet, klikoni butonin Start.

Zhvillimi me Docker në Nënsistemin Windows për Linux (WSL)

Docker dhe docker-compose janë tani të disponueshme brenda shpërndarjes WSL.

Rëndësishme! Desktopi i përditësuar Docker tani ka një skedë me WSL brenda dritares së cilësimeve. Mbështetja WSL është aktivizuar atje.

Zhvillimi me Docker në Nënsistemin Windows për Linux (WSL)

Rëndësishme! Përveç kutisë së kontrollit të aktivizimit WSL, duhet gjithashtu të aktivizoni shpërndarjen tuaj WSL në skedën Burimet-> Integrimi WSL.

Zhvillimi me Docker në Nënsistemin Windows për Linux (WSL)

lëshim

Ajo që ishte e papritur ishin problemet e shumta që u shfaqën gjatë përpjekjes për të ngritur kontejnerët e projektit të vendosura në direktorinë e përdoruesve të Windows.

Gabimet e llojeve të ndryshme që lidhen me lëshimin e skripteve bash (që zakonisht fillojnë kur ndërtohen kontejnerë për instalimin e bibliotekave dhe shpërndarjeve të nevojshme) dhe gjëra të tjera të zakonshme për zhvillim në Linux na bënë të mendojmë për vendosjen e projekteve direkt në drejtorinë e përdoruesve të Ubuntu 18.04.

.

Nga zgjidhja e problemit të mëparshëm, vijon: si të punoni me skedarët e projektit përmes një IDE të instaluar në Windows. Si një "praktikë më e mirë", gjeta vetëm një mundësi për veten time - të punoja përmes VSCode (megjithëse jam një adhurues i PhpStorm).

Pasi të keni shkarkuar dhe instaluar VSCode, sigurohuni që ta instaloni në shtesë Paketa e zgjerimit të zhvillimit në distancë.

Pas instalimit të shtesës së lartpërmendur, thjesht ekzekutoni komandën code . në drejtorinë e projektit kur VSCode është duke u ekzekutuar.

Në këtë shembull, nginx kërkohet për të hyrë në kontejnerë përmes shfletuesit. Instaloni atë nëpërmjet sudo apt-get install nginx Doli të ishte jo aq e thjeshtë. Së pari, na duhej të përditësonim shpërndarjen WSL duke ekzekutuar sudo apt update && sudo apt dist-upgrade, dhe vetëm pas kësaj filloni instalimin e nginx.

Rëndësishme! Të gjithë domenet lokale nuk regjistrohen në skedarin /etc/hosts të shpërndarjes Linux (nuk është as aty), por në skedarin e hosteve (zakonisht i vendosur C:WindowsSystem32driversetchosts) të Windows 10.

burime

Një përshkrim më i detajuar i secilit hap mund të gjendet këtu:

Burimi: www.habr.com

Shto një koment