Razvoj s Dockerom na Windows podsustavu za Linux (WSL)

Razvoj s Dockerom na Windows podsustavu za Linux (WSL)

Da biste u potpunosti radili s Docker projektom u WSL-u, morate instalirati WSL 2. U vrijeme pisanja, njegova je upotreba moguća samo kao dio sudjelovanja u programu Windows Insider (WSL 2 dostupan je u verzijama 18932 i novijim). Također je vrijedno posebno spomenuti da je za instalaciju i konfiguraciju Docker Desktopa potrebna verzija Windows 10 Pro.

Prvi koraci

Nakon što se pridružite programu Insider i instalirate ažuriranja, trebate instalirati distribuciju Linuxa (Ubuntu 18.04 u ovom primjeru) i Docker Desktop s WSL 2 Tech Preview:

  1. Docker Desktop WSL 2 tehnički pregled
  2. Ubuntu 18.04 iz Windows trgovine

U obje točke slijedimo sve upute za instalaciju i konfiguraciju.

Instalacija distribucije Ubuntu 18.04

Prije pokretanja Ubuntu 18.04 morate omogućiti Windows WSL i Windows Virtual Machine Platform pokretanjem dvije naredbe u PowerShell-u:

  1. Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux (zahtijeva ponovno pokretanje računala)
  2. Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

Nakon toga moramo biti sigurni da ćemo koristiti WSL v2. Da biste to učinili, u WSL ili PowerShell terminalu pokrenite sljedeće naredbe:

  • wsl -l -v — pogledajte koja je verzija trenutno instalirana. Ako je 1, onda se pomičemo dalje niz popis
  • wsl --set-version ubuntu 18.04 2 - za ažuriranje na verziju 2
  • wsl -s ubuntu 18.04 — instalirajte Ubuntu 18.04 kao zadanu distribuciju

Sada možete pokrenuti Ubuntu 18.04 i konfigurirati ga (navedite svoje korisničko ime i lozinku).

Instaliranje Docker Desktop

Slijedite upute tijekom postupka instalacije. Računalo će zahtijevati ponovno pokretanje nakon instalacije i pri prvom pokretanju kako bi se omogućio Hyper-V (za koji je potreban Windows 10 Pro za podršku).

Važno! Ako Docker Desktop prijavi blokiranje od strane vatrozida, idite na antivirusne postavke i napravite sljedeće promjene u pravilima vatrozida (u ovom primjeru Kaspersky Total Security koristi se kao antivirus):

  • Idite na Postavke -> Sigurnost -> Vatrozid -> Konfiguriraj pravila paketa -> Lokalna usluga (TCP) -> Uredi
  • Uklonite priključak 445 s popisa lokalnih priključaka
  • Zadržati

Nakon pokretanja Docker Desktopa odaberite WSL 2 Tech Preview iz njegovog kontekstnog izbornika.

Razvoj s Dockerom na Windows podsustavu za Linux (WSL)

U prozoru koji se otvori kliknite gumb Start.

Razvoj s Dockerom na Windows podsustavu za Linux (WSL)

Docker i docker-compose sada su dostupni unutar WSL distribucije.

Važno! Ažurirana Docker Desktop sada ima karticu s WSL-om unutar prozora postavki. Tamo je omogućena WSL podrška.

Razvoj s Dockerom na Windows podsustavu za Linux (WSL)

Važno! Uz potvrdni okvir za aktivaciju WSL-a, također morate aktivirati svoju WSL distribuciju u kartici Resursi->WSL integracija.

Razvoj s Dockerom na Windows podsustavu za Linux (WSL)

lansiranje

Ono što je bilo neočekivano su mnogi problemi koji su se pojavili prilikom pokušaja podizanja projektnih spremnika koji se nalaze u Windows korisničkom imeniku.

Pogreške raznih vrsta povezane s pokretanjem bash skripti (koje se obično pokreću prilikom izgradnje spremnika za instaliranje potrebnih biblioteka i distribucija) i druge stvari uobičajene za razvoj na Linuxu natjerale su nas da razmišljamo o postavljanju projekata izravno u korisnički direktorij Ubuntua 18.04.

.

Iz rješenja prethodnog problema slijedi sljedeće: kako raditi s projektnim datotekama kroz IDE instaliran na Windowsima. Kao “najbolju praksu”, pronašao sam samo jednu opciju za sebe - rad kroz VSCode (iako sam obožavatelj PhpStorma).

Nakon što preuzmete i instalirate VSCode, svakako ga instalirajte u proširenje Paket proširenja za daljinski razvoj.

Nakon što instalirate gore spomenuto proširenje, jednostavno pokrenite naredbu code . u direktoriju projekta kada je VSCode pokrenut.

U ovom primjeru, nginx je potreban za pristup spremnicima putem preglednika. Instalirajte ga putem sudo apt-get install nginx Ispostavilo se da nije tako jednostavno. Prvo smo morali ažurirati WSL distribuciju pokretanjem sudo apt update && sudo apt dist-upgrade, a tek nakon toga pokrenite instalaciju nginxa.

Važno! Sve lokalne domene nisu registrirane u datoteci /etc/hosts distribucije Linuxa (čak ni ne postoji), već u datoteci hosts (obično se nalazi C:WindowsSystem32driversetchosts) sustava Windows 10.

izvori

Detaljniji opis svakog koraka možete pronaći ovdje:

Izvor: www.habr.com

Dodajte komentar