IzstrÄde ar Docker operÄtÄjsistÄmÄ Windows apakÅ”sistÄmÄ Linux (WSL)
Lai pilnÄ«bÄ strÄdÄtu ar Docker projektu WSL, jums ir jÄinstalÄ WSL 2. RakstÄ«Å”anas laikÄ tÄ izmantoÅ”ana ir iespÄjama tikai kÄ daļa no dalÄ«bas programmÄ Windows Insider (WSL 2 ir pieejams bÅ«vniecÄ«bÄ 18932 un jaunÄkÄs versijÄs). Ir arÄ« vÄrts atseviŔķi pieminÄt, ka Windows 10 Pro versija ir nepiecieÅ”ama, lai instalÄtu un konfigurÄtu Docker Desktop.
Pirmie soļi
PÄc pievienoÅ”anÄs programmai Insider un atjauninÄjumu instalÄÅ”anas jums jÄinstalÄ Linux izplatÄ«Å”ana (Å”ajÄ piemÄrÄ Ubuntu 18.04) un Docker Desktop ar WSL 2 Tech Preview:
Abos punktos mÄs izpildÄm visus uzstÄdÄ«Å”anas un konfigurÄÅ”anas norÄdÄ«jumus.
Ubuntu 18.04 izplatÄ«Å”anas instalÄÅ”ana
Pirms Ubuntu 18.04 palaiÅ”anas jums ir jÄiespÄjo Windows WSL un Windows virtuÄlÄs maŔīnas platforma, izpildot divas komandas programmÄ PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux (nepiecieÅ”ama datora restartÄÅ”ana)
Tagad varat palaist Ubuntu 18.04 un konfigurÄt to (norÄdiet savu lietotÄjvÄrdu un paroli).
Docker Desktop instalÄÅ”ana
InstalÄÅ”anas procesa laikÄ izpildiet norÄdÄ«jumus. PÄc instalÄÅ”anas un pirmÄs palaiÅ”anas dators bÅ«s jÄrestartÄ, lai iespÄjotu Hyper-V (lai atbalstÄ«tu operÄtÄjsistÄmu Windows 10 Pro).
SvarÄ«gi! Ja Docker Desktop ziÅo par ugunsmÅ«ra bloÄ·ÄÅ”anu, atveriet pretvÄ«rusu iestatÄ«jumus un veiciet Å”Ädas izmaiÅas ugunsmÅ«ra noteikumos (Å”ajÄ piemÄrÄ kÄ pretvÄ«russ tiek izmantots Kaspersky Total Security):
Docker un Docker-compose tagad ir pieejami WSL izplatÄ«Å”anÄ.
SvarÄ«gi! AtjauninÄtajÄ Docker Desktop iestatÄ«jumu logÄ tagad ir cilne ar WSL. Tur ir iespÄjots WSL atbalsts.
SvarÄ«gi! Papildus izvÄles rÅ«tiÅai WSL aktivizÄÅ”ana, cilnÄ Resursi->WSL integrÄcija ir jÄaktivizÄ arÄ« savs WSL izplatÄ«jums.
ŠŠ°ŠæŃŃŠŗ
NegaidÄ«ti bija daudzÄs problÄmas, kas radÄs, mÄÄ£inot pacelt projekta konteinerus, kas atrodas Windows lietotÄja direktorijÄ.
DažÄda veida kļūdas, kas saistÄ«tas ar bash skriptu palaiÅ”anu (kas parasti sÄkas, veidojot konteinerus nepiecieÅ”amo bibliotÄku un izplatÄ«jumu instalÄÅ”anai) un citas Linux izstrÄdei izplatÄ«tas lietas, lika mums domÄt par projektu ievietoÅ”anu tieÅ”i Ubuntu 18.04 lietotÄju direktorijÄ.
.
SÄkot ar iepriekÅ”ÄjÄs problÄmas risinÄjumu, ir Å”Ädi: kÄ strÄdÄt ar projekta failiem, izmantojot sistÄmÄ Windows instalÄto IDE. KÄ ālabÄko praksiā es atradu tikai vienu iespÄju sev - strÄdÄt caur VSCode (lai gan esmu PhpStorm fans).
PÄc iepriekÅ” minÄtÄ paplaÅ”inÄjuma instalÄÅ”anas vienkÄrÅ”i palaidiet komandu code . projekta direktorijÄ, kad darbojas VSCode.
Å ajÄ piemÄrÄ nginx ir nepiecieÅ”ams, lai piekļūtu konteineriem, izmantojot pÄrlÅ«kprogrammu. InstalÄjiet to, izmantojot sudo apt-get install nginx IzrÄdÄ«jÄs, ka tas nav tik vienkÄrÅ”i. PirmkÄrt, mums bija jÄatjaunina WSL izplatÄ«Å”ana, palaižot sudo apt update && sudo apt dist-upgrade, un tikai pÄc tam sÄciet nginx instalÄÅ”anu.
SvarÄ«gi! Visi vietÄjie domÄni tiek reÄ£istrÄti nevis Linux izplatÄ«Å”anas failÄ /etc/hosts (tÄ pat tur nav), bet gan Windows 32 saimniekdatora failÄ (parasti atrodas C:WindowsSystem10driversetchosts).