Devlopman ak Docker sou Windows Subsystem pou Linux (WSL)

Devlopman ak Docker sou Windows Subsystem pou Linux (WSL)

Pou travay konplètman ak yon pwojè Docker nan WSL, ou dwe enstale WSL 2. Nan moman w ap ekri a, itilizasyon li posib sèlman nan kad patisipasyon nan pwogram Windows Insider (WSL 2 disponib nan builds 18932 ak pi wo). Li se tou vo mansyone separeman ke Windows 10 Pro vèsyon an oblije enstale ak konfigirasyon Docker Desktop.

Etap Premye

Apre w fin rantre nan pwogram Insider ak enstale mizajou, ou bezwen enstale yon distribisyon Linux (Ubuntu 18.04 nan egzanp sa a) ak Docker Desktop ak WSL 2 Tech Preview:

  1. Docker Desktop WSL 2 Tech Preview
  2. Ubuntu 18.04 soti nan Windows Store

Nan tou de pwen nou swiv tout enstalasyon ak enstriksyon konfigirasyon.

Enstale distribisyon Ubuntu 18.04

Anvan w kouri Ubuntu 18.04, ou bezwen pèmèt Windows WSL ak Windows Virtual Machine Platform lè w ap kouri de kòmandman nan PowerShell:

  1. Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux (Mande yon rekòmanse òdinatè)
  2. Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

Apre sa, nou bezwen asire w ke nou pral itilize WSL v2. Pou fè sa, nan tèminal WSL oswa PowerShell, kouri kòmandman sa yo:

  • wsl -l -v — gade ki vèsyon ki enstale kounye a. Si 1, Lè sa a, nou deplase pi lwen desann lis la
  • wsl --set-version ubuntu 18.04 2 - pou mete ajou nan vèsyon 2
  • wsl -s ubuntu 18.04 - enstale Ubuntu 18.04 kòm distribisyon default

Koulye a, ou ka kòmanse Ubuntu 18.04 ak konfigirasyon li (presize non itilizatè ou an ak modpas).

Enstale Docker Desktop

Swiv enstriksyon yo pandan pwosesis enstalasyon an. Òdinatè a pral mande pou yon rekòmanse apre enstalasyon ak sou premye demaraj pou pèmèt Hyper-V (ki mande pou Windows 10 Pro sipòte).

Enpòtan! Si Docker Desktop rapòte bloke firewall la, ale nan paramèt antivirus yo epi fè chanjman sa yo nan règ firewall yo (nan egzanp sa a, yo itilize Kaspersky Total Security kòm antivirus):

  • Ale nan Anviwònman -> Sekirite -> Firewall -> Konfigure règ pake -> Sèvis lokal (TCP) -> Edit
  • Retire pò 445 nan lis pò lokal yo
  • Kenbe

Apre w fin kòmanse Docker Desktop, chwazi WSL 2 Tech Preview nan meni kontèks li yo.

Devlopman ak Docker sou Windows Subsystem pou Linux (WSL)

Nan fennèt la ki ouvè, klike sou bouton an Kòmanse.

Devlopman ak Docker sou Windows Subsystem pou Linux (WSL)

Docker ak docker-compose yo disponib kounye a nan distribisyon WSL la.

Enpòtan! Mizajou Docker Desktop la kounye a gen yon tab ak WSL andedan fenèt anviwònman an. Sipò WSL pèmèt la.

Devlopman ak Docker sou Windows Subsystem pou Linux (WSL)

Enpòtan! Anplis de kaz aktivasyon WSL la, ou bezwen aktive distribisyon WSL ou a nan Resous->WSL Entegrasyon tab la.

Devlopman ak Docker sou Windows Subsystem pou Linux (WSL)

Lanse

Ki sa ki te inatandi se te anpil pwoblèm ki te parèt lè w ap eseye leve resipyan pwojè ki sitiye nan anyè itilizatè Windows la.

Erè divès kalite ki asosye ak lansman scripts bash (ki anjeneral kòmanse lè bati resipyan pou enstale bibliyotèk ak distribisyon ki nesesè yo) ak lòt bagay komen pou devlopman sou Linux te fè nou reflechi sou mete pwojè dirèkteman nan anyè itilizatè Ubuntu 18.04.

.

Soti nan solisyon an nan pwoblèm anvan an, sa ki annapre yo: ki jan yo travay ak dosye pwojè atravè yon IDE enstale sou Windows. Kòm yon "pi bon pratik", mwen te jwenn sèlman yon opsyon pou tèt mwen - k ap travay atravè VSCode (byenke mwen se yon fanatik PhpStorm).

Apre telechaje ak enstale VSCode, asire w ke ou enstale li nan ekstansyon an Pake ekstansyon Devlopman Remote.

Apre enstale ekstansyon ki endike anwo a, tou senpleman kouri lòd la code . nan anyè pwojè a lè VSCode ap kouri.

Nan egzanp sa a, nginx oblije jwenn aksè nan resipyan atravè navigatè a. Enstale li atravè sudo apt-get install nginx Li te tounen soti yo pa tèlman senp. Premyèman, nou te bezwen mete ajou distribisyon WSL nan kouri sudo apt update && sudo apt dist-upgrade, epi sèlman apre sa kòmanse enstalasyon nginx la.

Enpòtan! Tout domèn lokal yo anrejistre pa nan fichye /etc/hosts distribisyon Linux (li pa menm la), men nan dosye hosts (anjeneral sitiye C:WindowsSystem32driversetchosts) nan Windows 10.

Sous

Ou ka jwenn yon deskripsyon pi detaye sou chak etap isit la:

Sous: www.habr.com

Add nouvo kòmantè