Siit saate teada, kuidas saada Windowsis parim Dockeri kasutuskogemus.

Windowsi alamsüsteem Linux 2 jaoks on fenomenaalne tööriist operatsioonisüsteemides Windows 10 ja 11 ning integreerub Dockeriga sujuvalt. Arendajatena on oluline mõista, mida need tarkvarad pakuvad ja kuidas saate oma Docker-WSL 2 seadistustest maksimumi võtta.

Mis on Docker?

Docker on avatud lähtekoodiga platvorm, mis võimaldab arendajatel oma rakendusi konteineris tõhusalt ehitada, juurutada ja käitada. Kõik sõltuvused on koondatud, nii et teie projekti saab hõlpsasti igas keskkonnas juurutada.

Docker on paljude konteineriplatvormide seas väga populaarne, kuna see on usaldusväärne, funktsionaalne ja hästi skaleeritav. See töötab Dockeri mootoril, mis on oluline DevOpsi tööriist, mis pakub testimiseks ja juurutamiseks puhast ja kerget keskkonda. Docker sarnaneb virtuaalmasinaga, kuid virtualiseerib pigem operatsioonisüsteemi kui selle aluseks olevat riistvara.

Tarkvaraarendajate jaoks lihtsustab Docker töövoogu, luues erinevatele mikroteenustele individuaalsed konteinerid, mis sisaldavad vajalikke sõltuvusi, teeke ja konfiguratsioone. Iga mikroteenuse konteiner on isoleeritud ja individuaalselt skaleeritav.

Dockeri kasutamine WSL 2-s

Docker ühildub kõigi suuremate operatsioonisüsteemidega, nagu Windows, macOS ja Linux. Kui kasutate operatsioonisüsteemi Windows 10 või 11, saate Dockerit kasutada Docker Desktopi ja integreerige see Windowsi alamsüsteemiga Linux 2 jaoks jõudluse parandamiseks. Docker Desktop for Windows saate alla laadida saidilt ametlik Dockeri veebisait.

Windowsi alamsüsteem Linuxile (WSL) on väärtuslik funktsioon, mis võimaldab Windowsi kasutajatel käitada Linuxi distributsioone, nagu Ubuntu ja Kali, ilma virtuaalset masinat või topeltkäivitust seadistamata.

See tähendab ka seda Windowsi kasutajad saavad otse kasutada Linuxi käsurea tööriistu, rakendused ja utiliidid ilma täiendavate installietappideta. WSL-i uusim versioon WSL 2 pakub suuremat stabiilsust ja spetsiaalset Linuxi tuuma.

Kuna Dockeri konteinerid on vastupidavad, saate need isegi serveri hostimiseks konfigureerida; nginxi dokkeri konteinereid kasutatakse tavaliselt veebiserveritena. Lisaks saate Dockerit kasutada mitmel muul viisil:

  • Käivitage Linuxi distributsioone hõlpsalt
  • Õppimise või testimise eesmärgil seadistage veebiserver
  • Kaasaskantavad juurutavad rakendused
  • Ühendage rakendus üheks pildifailiks
  • Lihtsustatud CI/CD torujuhe

Peate tutvuma parimate tavadega Dockeri kasutamiseks koos Windowsi alamsüsteemiga Linux 2 jaoks, täpselt nagu mis tahes muu platvormi või tööriista puhul. Arendajana võin isikliku kogemuse põhjal öelda, et muutute palju produktiivsemaks ja tõhusamaks, kui integreerite järgmised näpunäited oma töövoogu.

1. Integreerige VS-kood WSL 2-ga

Visual Studio Code on populaarne IDE, mida armastatakse selle uskumatute funktsioonide, kogukonna ja laienduste tõttu. Arendajana on võimalus kasutada Visual Studio koodi rakenduste arendamiseks Windowsi platvormil ka nende rakenduste käitamine Linuxi tuumas on uskumatult kasulik ja peaaegu uskumatu tunnusjoon.

Kui integreerite VS-koodi Linuxi Windowsi alamsüsteemi, saate kasutada selle spetsiaalset Linuxi tuuma, et parandada platvormidevahelist ühilduvust. Saate oma töövoogu veelgi sujuvamaks muuta, kasutades VS Code integreeritud terminali koos WSL 2-ga.

To seadistage Windowsis VS-kood WSL 2-ga, saate konfigureerida WSL laiendust VS Code Marketplace'ist ja pange asjad käima.

2. Kasutage WSL 2 failisüsteemi

Dockeri konteinerite nõuetekohaseks käitamiseks on ülioluline, et tugineksite oma WSL 2 distributsiooni failisüsteemile ja ei sõltuks suuresti Windowsi failisüsteemist. Kogu oma WSL 2-s Dockeri konteineritega töötamise kogemuse jooksul olen avastanud, et parem on salvestada oma projektifailid WSL-i.

3. Kasutage Linuxi algskripte

Paljud konteinerprojektid, millega töötate, on tõenäoliselt kaasas Linuxi automatiseerimiseks mõeldud skriptidega. Tavaliselt töötatakse need skriptid esmalt välja Linuxi jaoks ja Windowsi arendajad ei ole prioriteetsed.

WSL 2 abil saab kogu teie meeskond kasutada samu Linuxi automatiseerimisskripte ja te ei pea muretsema oma meeskonna jaoks Windowsiga ühilduvate automatiseerimisskriptide hooldamise pärast.

4. Konfigureerige BuildKit, et tagada parem turvalisus ja jõudlus

BuildKit on avatud lähtekoodiga tööriistakomplekt, mis täiustab traditsioonilist Dockeri ehitusprotsessi jõudluse ja turvalisuse osas; see on otse Dockeriga integreeritud, nii et te ei pea seda eraldi installima.

Kui lubate BuildKit vaikimisi veendute, et teie konteinerid koostatakse BuildKiti tööriistakomplektiga, mis tagab teile parema turvalisuse, samaaegsuse, paindlikkuse ja vahemällu salvestamise.

BuildKiti vaikimisi lubamiseks peaksite ~/.profile konfiguratsioonifailis tegema järgmised muudatused:

eksportida DOCKER_BUILDKIT=1.

5. Seadistage ressursside piirangud

Kui integreerite WSL 2 taustaprogrammi Docker Desktopiga, annate Dockerile juurdepääsu kõigile oma protsessoriressurssidele. See aitab parandada ressursimahukate konteinerite jõudlust.

Kuid mõnel juhul võib konteiner eraldada palju liigset mälu, mis põhjustab kriitiliste OS-i protsesside kokkujooksmist. Tõenäolisemalt kogete seda andmebaasikonteinerite või vahemällu salvestava mikroteenuse kasutamisel.

Õnneks saate konfigureerida Dockeri konteinerid, et piirata süsteemimälu ja protsessori kasutust. Süsteemimälu seadistamisel peaksite alati olema ettevaatlik, isegi väiksemal veal võivad olla märkimisväärsed tagajärjed. Võite viidata ametlik Dockeri dokumentatsioon üksikasjalikuma juhendi jaoks Dockeri konteineri tarbitava mälu ja protsessori ressursside piiramise kohta.

6. Vahemälu taastamine

Kui kasutate Dockeri konteinerit WSL 2-s, tuleks selle mälu pärast konteineri lõpetamist vabastada. Kahjuks kipub operatsioonisüsteemi tuum hoidma andmeid vahemälus; see tähendab, et WSL 2 poolt taaskasutatud mälust ei piisa.

Saate taastada kogu mälu, mida tarbetult kasutatakse vahemäluna, käivitades WSL 2 juure kaudu järgmise käsu:

kaja 1 > /proc/sys/vm/drop_caches

Saage WSL 2 abil targemaks

WSL 2 on Windowsi-põhiste arendajate jaoks parim funktsioon, mis muudab täielikult seda, kuidas arendajad Dockerit kasutavad. Arendajad peavad mõistma Dockeri WSL-iga kasutamise parimaid tavasid, et parandada jõudlust, turvalisust ja töövoo paindlikkust.