Dockeri projektiga WSL-is täielikuks töötamiseks peate installima WSL 2. Selle artikli kirjutamise ajal on selle kasutamine võimalik ainult Windows Insideri programmis osalemise osana (WSL 2 on saadaval järgudes 18932 ja uuemates versioonides). Eraldi tasub mainida ka seda, et Docker Desktopi installimiseks ja seadistamiseks on vajalik Windows 10 Pro versioon.
Esimesed sammud
Pärast Insideri programmiga liitumist ja värskenduste installimist peate installima Linuxi distributsiooni (selles näites Ubuntu 18.04) ja Docker Desktopi koos WSL 2 tehnilise eelvaatega:
Nüüd saate käivitada Ubuntu 18.04 ja selle konfigureerida (määrake oma kasutajanimi ja parool).
Docker Desktopi installimine
Järgige installiprotsessi ajal juhiseid. Arvuti vajab pärast installimist ja esimesel käivitamisel taaskäivitamist, et lubada Hyper-V (mille toetamiseks on vaja Windows 10 Pro).
Tähtis! Kui Docker Desktop teatab tulemüüri blokeerimisest, avage viirusetõrje seaded ja tehke tulemüürireeglites järgmised muudatused (selles näites kasutatakse viirusetõrjena Kaspersky Total Securityt):
Pärast Docker Desktopi käivitamist valige selle kontekstimenüüst WSL 2 Tech Preview.
Avanevas aknas klõpsake nuppu Start.
Docker ja docker-compose on nüüd saadaval WSL-i distributsioonis.
Tähtis! Värskendatud Docker Desktopil on nüüd seadete aknas vahekaart WSL-iga. WSL-i tugi on seal lubatud.
Tähtis! Lisaks WSL-i aktiveerimise märkeruudule peate aktiveerima ka oma WSL-i distributsiooni vahekaardil Ressursid->WSL-i integreerimine.
Käivita
Ootamatu oli palju probleeme, mis tekkisid Windowsi kasutajakataloogis asuvate projektikonteinerite tõstmisel.
Bash-skriptide käivitamisega seotud mitmesugused vead (mis tavaliselt algavad vajalike teekide ja distributsioonide installimiseks konteinerite ehitamisel) ja muud Linuxis arendamiseks levinud asjad panid meid mõtlema projektide paigutamisele otse Ubuntu 18.04 kasutajakataloogi.
.
Eelmise probleemi lahendusest järgneb järgmine: kuidas töötada projektifailidega Windowsi installitud IDE kaudu. "Parima tavana" leidsin enda jaoks ainult ühe võimaluse - töö VSCode'i kaudu (kuigi olen PhpStormi fänn).
Pärast VSCode'i allalaadimist ja installimist installige see kindlasti laiendusse Kaugarenduse laienduspakett.
Pärast ülalmainitud laienduse installimist käivitage lihtsalt käsk code . projekti kataloogis, kui VSCode töötab.
Selles näites on nginx nõutav, et pääseda brauseri kaudu konteineritele juurde. Installige see kaudu sudo apt-get install nginx Selgus, et see polegi nii lihtne. Esiteks pidime WSL-i distributsiooni värskendama sudo apt update && sudo apt dist-upgradeja alles pärast seda käivitage nginxi installimine.
Tähtis! Kõik kohalikud domeenid pole registreeritud mitte Linuxi distributsiooni failis /etc/hosts (seda pole isegi seal), vaid Windows 32 hosts-failis (tavaliselt asub C:WindowsSystem10driversetchosts).