Kehitys Dockerin kanssa Windows-alijärjestelmässä Linuxille (WSL)

Kehitys Dockerin kanssa Windows-alijärjestelmässä Linuxille (WSL)

Jotta voit työskennellä täysin Docker-projektin kanssa WSL:ssä, sinun on asennettava WSL 2. Kirjoitushetkellä sen käyttö on mahdollista vain osana Windows Insider -ohjelmaan osallistumista (WSL 2 on saatavilla versioissa 18932 ja uudemmissa). On myös syytä mainita erikseen, että Docker Desktopin asentamiseen ja määrittämiseen tarvitaan Windows 10 Pro -versio.

Ensiaskeleet

Kun olet liittynyt Insider-ohjelmaan ja asentanut päivitykset, sinun on asennettava Linux-jakelu (tässä esimerkissä Ubuntu 18.04) ja Docker Desktop, jossa on WSL 2 Tech Preview:

  1. Docker Desktop WSL 2 tekninen esikatselu
  2. Ubuntu 18.04 Windows Storesta

Noudatamme molemmissa kohdissa kaikkia asennus- ja konfigurointiohjeita.

Ubuntu 18.04 -jakelun asentaminen

Ennen kuin käytät Ubuntu 18.04:ää, sinun on otettava käyttöön Windows WSL ja Windows Virtual Machine Platform suorittamalla kaksi komentoa PowerShellissä:

  1. Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux (vaatii tietokoneen uudelleenkäynnistyksen)
  2. Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

Jälkeenpäin meidän on varmistettava, että käytämme WSL v2:ta. Voit tehdä tämän WSL- tai PowerShell-päätteessä suorittamalla seuraavat komennot:

  • wsl -l -v – katso, mikä versio on tällä hetkellä asennettuna. Jos 1, siirrymme alaspäin luettelossa
  • wsl --set-version ubuntu 18.04 2 - päivittää versioon 2
  • wsl -s ubuntu 18.04 — asenna Ubuntu 18.04 oletusjakeluksi

Nyt voit käynnistää Ubuntu 18.04:n ja määrittää sen (määritä käyttäjätunnuksesi ja salasanasi).

Docker Desktopin asentaminen

Noudata ohjeita asennuksen aikana. Tietokone on käynnistettävä uudelleen asennuksen jälkeen ja ensimmäisen käynnistyksen yhteydessä, jotta Hyper-V voidaan ottaa käyttöön (johon tarvitaan Windows 10 Pron tuki).

Tärkeää! Jos Docker Desktop ilmoittaa, että palomuuri estää, siirry virustentorjuntaasetuksiin ja tee seuraavat muutokset palomuurisääntöihin (tässä esimerkissä Kaspersky Total Securityä käytetään virustorjuntaohjelmana):

  • Siirry kohtaan Asetukset -> Suojaus -> Palomuuri -> Määritä pakettisäännöt -> Paikallinen palvelu (TCP) -> Muokkaa
  • Poista portti 445 paikallisten porttien luettelosta
  • Säilyttää

Kun olet käynnistänyt Docker Desktopin, valitse WSL 2 Tech Preview sen kontekstivalikosta.

Kehitys Dockerin kanssa Windows-alijärjestelmässä Linuxille (WSL)

Napsauta avautuvassa ikkunassa Käynnistä-painiketta.

Kehitys Dockerin kanssa Windows-alijärjestelmässä Linuxille (WSL)

Docker ja Docker-compose ovat nyt saatavilla WSL-jakelussa.

Tärkeää! Päivitetyssä Docker Desktopissa on nyt WSL-välilehti asetusikkunassa. WSL-tuki on käytössä siellä.

Kehitys Dockerin kanssa Windows-alijärjestelmässä Linuxille (WSL)

Tärkeää! WSL-aktivointi-valintaruudun lisäksi sinun on aktivoitava myös WSL-jakelu Resurssit->WSL-integraatio -välilehdessä.

Kehitys Dockerin kanssa Windows-alijärjestelmässä Linuxille (WSL)

Запуск

Odottamatonta olivat monet ongelmat, joita ilmeni yritettäessä nostaa Windowsin käyttäjähakemistossa olevia projektisäiliöitä.

Erilaiset bash-skriptien käynnistämiseen liittyvät virheet (jotka yleensä alkavat rakentaa kontteja tarvittavien kirjastojen ja jakeluiden asentamiseen) ja muut Linux-kehityksessä yleiset asiat saivat meidät ajattelemaan projektien sijoittamista suoraan Ubuntu 18.04:n käyttäjähakemistoon.

.

Edellisen ongelman ratkaisusta seuraava: kuinka käsitellä projektitiedostoja Windowsiin asennetun IDE:n kautta. "Parhaana käytäntönä" löysin itselleni vain yhden vaihtoehdon - työskentelyn VSCoden kautta (vaikka olen PhpStormin fani).

Kun olet ladannut ja asentanut VSCoden, muista asentaa se laajennukseen Etäkehityksen laajennuspaketti.

Kun olet asentanut yllä mainitun laajennuksen, suorita komento code . projektihakemistossa, kun VSCode on käynnissä.

Tässä esimerkissä nginx vaaditaan pääsemään säilöihin selaimen kautta. Asenna se kautta sudo apt-get install nginx Se ei osoittautunut niin yksinkertaiseksi. Ensin meidän piti päivittää WSL-jakelu suorittamalla sudo apt update && sudo apt dist-upgrade, ja vasta sen jälkeen aloita nginx-asennus.

Tärkeää! Kaikki paikalliset verkkotunnukset ei ole rekisteröity Linux-jakelun /etc/hosts-tiedostoon (se ei edes ole siellä), vaan Windows 32:n hosts-tiedostoon (joka sijaitsee yleensä C:WindowsSystem10driversetchosts).

lähteet

Tarkempi kuvaus kustakin vaiheesta löytyy täältä:

Lähde: will.com

Lisää kommentti