Pêşkeftina bi Docker-ê re li ser Subpergala Windows-ê ji bo Linux (WSL)

Pêşkeftina bi Docker-ê re li ser Subpergala Windows-ê ji bo Linux (WSL)

Ji bo ku bi tevahî bi projeyek Docker a WSL-ê re bixebitin, divê hûn WSL 2 saz bikin. Di dema nivîsandinê de, karanîna wê tenê wekî beşek beşdarî bernameya Windows Insider gengaz e (WSL 2 di avahîyên 18932 û mezintir de heye). Di heman demê de hêjayî gotinê ye ku guhertoya Windows 10 Pro ji bo sazkirin û mîhengkirina Docker Desktop hewce ye.

gavên pêşîn

Piştî ku hûn beşdarî bernameya Insider-ê bibin û nûvekirinan saz bikin, hûn hewce ne ku dabeşek Linux (di vê nimûneyê de Ubuntu 18.04) û Sermaseya Docker-ê bi WSL 2 Tech Preview saz bikin:

  1. Pêşdîtina Teknîkî ya Sermaseya Docker WSL 2
  2. Ubuntu 18.04 ji Windows Store

Li her du xalan em hemî rêwerzên sazkirinê û vesazkirinê dişopînin.

Dabeşkirina Ubuntu 18.04 saz kirin

Berî ku hûn Ubuntu 18.04-ê bimeşînin, hûn hewce ne ku bi xebitandina du fermanan di PowerShell de Windows WSL û Platforma Makîneya Virtual a Windows-ê çalak bikin:

  1. Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux (ji nû ve destpêkirina komputerê hewce dike)
  2. Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

Dûv re divê em pê ewle bin ku em ê WSL v2 bikar bînin. Ji bo vê yekê, di termînala WSL an PowerShell de, emrên jêrîn bimeşînin:

  • wsl -l -v - Binêrin ka kîjan guhertoya niha hatî saz kirin. Ger 1, wê hingê em di navnîşê de ber bi jêr ve diçin
  • wsl --set-version ubuntu 18.04 2 - nûvekirina guhertoya 2
  • wsl -s ubuntu 18.04 - Ubuntu 18.04 wekî belavkirina xwerû saz bikin

Naha hûn dikarin Ubuntu 18.04 dest pê bikin û wê mîheng bikin (navê bikarhêner û şîfreya xwe diyar bikin).

Sazkirina Docker Desktop

Di pêvajoya sazkirinê de rêwerzan bişopînin. Dê komputer piştî sazkirinê û di destpêka yekem de ji nû ve dest pê bike da ku Hyper-V çalak bike (ji ber vê yekê Windows 10 Pro hewce ye).

Girîng! Ger Docker Desktop astengkirina ji hêla dîwarê agir ve rapor dike, biçin mîhengên antivirus û guheztinên jêrîn li qaîdeyên dîwarê agir bikin (di vê nimûneyê de, Kaspersky Total Security wekî antivirus tê bikar anîn):

  • Herin Mîhengan -> Ewlekariyê -> Firewall -> Rêgezên pakêtê mîheng bikin -> Karûbarê Herêmî (TCP) -> Biguherînin
  • Porta 445 ji navnîşa benderên herêmî derxînin
  • gelxwegirtin

Piştî destpêkirina Docker Desktop, WSL 2 Tech Preview ji pêşeka wê ya çarçoveyê hilbijêrin.

Pêşkeftina bi Docker-ê re li ser Subpergala Windows-ê ji bo Linux (WSL)

Di pencereya ku vedibe, bişkojka Destpêkê bikirtînin.

Pêşkeftina bi Docker-ê re li ser Subpergala Windows-ê ji bo Linux (WSL)

Docker û docker-compose naha di nav belavkirina WSL de hene.

Girîng! Sermaseya Docker-a nûvekirî naha di hundurê pencereya mîhengan de tabloyek bi WSL heye. Piştgiriya WSL li wir çalak e.

Pêşkeftina bi Docker-ê re li ser Subpergala Windows-ê ji bo Linux (WSL)

Girîng! Ji bilî qutiya kontrolê ya aktîvkirina WSL-ê, hûn jî hewce ne ku hûn belavkirina WSL-ya xwe di tabloya Çavkanî-> Yekkirina WSL-ê de çalak bikin.

Pêşkeftina bi Docker-ê re li ser Subpergala Windows-ê ji bo Linux (WSL)

Berdaye

Tiştê ku nedihat hêvîkirin ew bû ku gelek pirsgirêkên ku derketin holê dema ku hewl didin ku konteynerên projeyê yên ku di pelrêça bikarhênerê Windows-ê de cih digirin rakin.

Çewtiyên cûrbecûr yên ku bi destpêkirina nivîsên bash re têkildar in (ku bi gelemperî dema ku konteynerên ji bo sazkirina pirtûkxane û belavkirinên pêwîst têne çêkirin dest pê dikin) û tiştên din ên ji bo pêşkeftina li Linux-ê hevpar in, me fikirîn ku rasterast projeyan di pelrêça bikarhêner a Ubuntu 18.04 de bi cîh bikin.

.

Ji çareseriya pirsgirêka berê, jêrîn wiha ye: meriv çawa bi pelên projeyê re bi navgîniya IDE-ya ku li ser Windows-ê hatî saz kirin re dixebite. Wekî "pratîka çêtirîn", min ji xwe re tenê vebijarkek dît - bi navgîniya VSCode xebitîn (her çend ez fanek PhpStorm im).

Piştî dakêşandin û sazkirina VSCode, pê ewle bin ku wê di pêvekê de saz bikin pakêta dirêjkirina Pêşveçûna Dûr.

Piştî sazkirina pêveka jorîn a jorîn, bi tenê fermanê bimeşînin code . di pelrêça projeyê de dema ku VSCode dimeşe.

Di vê nimûneyê de, nginx hewce ye ku bi navgîniya gerokê ve bigihîje konteyneran. Bi rêya wê saz bikin sudo apt-get install nginx Derket holê ku ne ewqas hêsan e. Pêşîn, me hewce bû ku belavkirina WSL-ê bi xebitandinê nûve bikin sudo apt update && sudo apt dist-upgrade, û tenê piştî wê sazkirina nginx dest pê dike.

Girîng! Hemî domên herêmî ne di pelê /etc/hosts ya belavkirina Linux-ê de (ew ne li wir e), lê di pelê mêvandar de (bi gelemperî C:WindowsSystem32driversetchosts) yên Windows 10 têne tomar kirin.

Çavkaniyên

Danasînek berfirehtir a her gav dikare li vir were dîtin:

Source: www.habr.com

Add a comment