
Norėdami visiškai dirbti su „Docker“ projektu WSL, turite įdiegti WSL 2. Rašymo metu jį naudoti galima tik dalyvaujant „Windows Insider“ programoje (WSL 2 galimas 18932 ir naujesnėse versijose). Taip pat verta atskirai paminėti, kad norint įdiegti ir konfigūruoti Docker Desktop, reikalinga Windows 10 Pro versija.
Pirmieji žingsniai
Prisijungę prie „Insider“ programos ir įdiegę naujinimus, turite įdiegti „Linux“ paskirstymą (šiame pavyzdyje „Ubuntu 18.04“) ir „Docker Desktop“ su WSL 2 technine peržiūra:
Abiejuose taškuose laikomės visų diegimo ir konfigūravimo instrukcijų.
Ubuntu 18.04 platinimo diegimas
Prieš paleisdami Ubuntu 18.04, turite įgalinti Windows WSL ir Windows virtualios mašinos platformą paleisdami dvi komandas PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux(reikia iš naujo paleisti kompiuterį)Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
Po to turime įsitikinti, kad naudosime WSL v2. Norėdami tai padaryti, WSL arba PowerShell terminale paleiskite šias komandas:
wsl -l -v— pažiūrėkite, kuri versija šiuo metu įdiegta. Jei 1, tada sąraše einame toliauwsl --set-version ubuntu 18.04 2- atnaujinti į 2 versijąwsl -s ubuntu 18.04— įdiekite Ubuntu 18.04 kaip numatytąjį platinimą
Dabar galite paleisti Ubuntu 18.04 ir sukonfigūruoti (nurodykite savo vartotojo vardą ir slaptažodį).
„Docker Desktop“ diegimas
Diegimo proceso metu vadovaukitės instrukcijomis. Įdiegus kompiuterį reikės iš naujo paleisti ir pirmą kartą paleidus, kad būtų įjungtas „Hyper-V“ (tam reikalinga „Windows 10 Pro“ palaikymas).
Svarbu! Jei „Docker Desktop“ praneša, kad užkarda blokuoja, eikite į antivirusinius nustatymus ir atlikite šiuos ugniasienės taisyklių pakeitimus (šiame pavyzdyje „Kaspersky Total Security“ naudojama kaip antivirusinė priemonė):
- Eikite į Nustatymai -> Sauga -> Ugniasienė -> Konfigūruoti paketų taisykles -> Vietinė paslauga (TCP) -> Redaguoti
- Pašalinkite 445 prievadą iš vietinių prievadų sąrašo
- Išlaikyti
Paleidę „Docker Desktop“, kontekstiniame meniu pasirinkite WSL 2 Tech Preview.

Atsidariusiame lange spustelėkite mygtuką Pradėti.

„Docker“ ir „docker-compose“ dabar pasiekiami WSL paskirstyme.
Svarbu! Atnaujintame „Docker Desktop“ nustatymų lange dabar yra skirtukas su WSL. Ten įjungtas WSL palaikymas.

Svarbu! Be WSL aktyvinimo žymės langelio, taip pat turite suaktyvinti WSL paskirstymą skirtuke Resources->WSL Integration.

Paleidimas
Netikėta buvo daugybė problemų, iškilusių bandant pakelti projekto konteinerius, esančius Windows vartotojo kataloge.
Įvairių rūšių klaidos, susijusios su bash scenarijų paleidimu (kurios paprastai prasideda kuriant konteinerius, skirtus reikiamoms bibliotekoms ir paskirstymui įdiegti) ir kiti dalykai, įprasti kuriant Linux sistemoje, privertė mus galvoti apie projektų patalpinimą tiesiai į Ubuntu 18.04 vartotojo katalogą.
.
Iš ankstesnės problemos sprendimo: kaip dirbti su projekto failais naudojant „Windows“ įdiegtą IDE. Kaip „geriausią praktiką“ radau tik vieną variantą sau - dirbti per VSCode (nors esu „PhpStorm“ gerbėjas).
Atsisiuntę ir įdiegę VSCode, būtinai įdiekite jį plėtinyje .
Įdiegę aukščiau minėtą plėtinį, tiesiog paleiskite komandą code . projekto kataloge, kai veikia VSCode.
Šiame pavyzdyje nginx turi pasiekti konteinerius per naršyklę. Įdiekite jį per sudo apt-get install nginx Paaiškėjo, kad tai nėra taip paprasta. Pirmiausia turėjome atnaujinti WSL paskirstymą paleisdami sudo apt update && sudo apt dist-upgrade, ir tik po to pradėkite nginx diegimą.
Svarbu! Visi vietiniai domenai registruojami ne „Linux“ paskirstymo faile /etc/hosts (jo net nėra), o „Windows 32“ pagrindinio kompiuterio faile (paprastai esančiame C:WindowsSystem10driversetchosts).
Informacijos šaltiniai
Išsamesnį kiekvieno žingsnio aprašymą rasite čia:
Šaltinis: www.habr.com
