[Õpetus] Käivitage Windowsis Linuxi konteinerid

Collapse
X
 
  • Aeg
  • Show
Puhasta kõik
uued postitused
  • root
    Huviline
    • Oct 2021
    • 318

    [Õpetus] Käivitage Windowsis Linuxi konteinerid

    1. Ülevaade
    Nüüd on võimalik käitada Dockeri konteinereid operatsioonisüsteemides Windows 10 ja Windows Server, kasutades Ubuntut hostimisbaasina.

    Kujutage ette, et kasutate Windowsis oma Linuxi rakendusi, kasutades teile sobivat Linuxi distributsiooni: Näiteks Ubuntu!

    Nüüd on seda võimalik teha, kasutades Windowsi Dockeri tehnoloogiat ja Hyper-V virtualiseerimise võimalust.

    Click image for larger version

Name:	shell.png
Views:	262
Size:	11.8 KB
ID:	321

    2. Nõuded
    Teil on vaja 64 bitist x86 arvutit, millel on 8 GB RAM-i, milles töötab Windows 10 või Windows Server ja mida on värskendatud.

    Teil on vaja ka uusimat Dockerit https://docs.docker.com/get-docker/

    3. Paigaldage Docker Windows-le
    Laadige Dockeri poest alla Docker Windows-le https://hub.docker.com/editions/comm...esktop-windows

    Click image for larger version

Name:	dockerstore.png
Views:	121
Size:	121.3 KB
ID:	322

    Pärast allalaadimist jätkake paigaldus toimingutega ja logige välja või taaskäivitage süsteem, nagu paigaldaja on nõudnud.

    Click image for larger version

Name:	dockerinstall.png
Views:	116
Size:	43.8 KB
ID:	323

    Pärast taaskäivitamist käivitub Docker. Docker nõuab, et funktsioon Hyper-V oleks lubatud, nii et vajadusel palub teil see lubada ja taaskäivitada. Hyper-V lubamiseks ja süsteemi taaskäivitamiseks klõpsake Dockeri jaoks OK.

    Click image for larger version

Name:	hyperv.png
Views:	117
Size:	22.1 KB
ID:	324

    4. Laadige alla Ubuntu konteineri image
    Laadige Canonical Partner Images veebisaidilt alla uusim Windowsi jaoks mõeldud Ubuntu konteineri image https://partner-images.canonical.com...ux-containers/

    Pärast allalaadimist pakkige lahti, kasutades nt. 7-Zip:
    PHP Code:
    C:\Users\mathi\> .\xz.exe -d xenial-container-hyper-v.vhdx.xz 
    
    5. Valmistage konteineri keskkond ette
    Esiteks looge kaks kataloogi:

    Click image for larger version

Name:	directoryes.png
Views:	119
Size:	40.3 KB
ID:	325

    Looge C:\lcow, mida kasutatakse Dockeri jaoks konteinerite ettevalmistamise ajal.

    Click image for larger version

Name:	lcow.png
Views:	119
Size:	26.2 KB
ID:	326

    Ja looge ka C:\Program Files\Linux Containers. See on koht, kus pesitseb Ubuntu konteineri image.

    Peate andma sellele kaustale lisaõigused, et lubada Dockeril selles olevaid pilte kasutada. Käivitage administraatorina Powershelli aknas järgmine skript:
    PHP Code:
    param(
    [string] $Root
    )
    # Give the virtual machines group full control
    $acl = Get-Acl -Path $Root
    $vmGroupRule = new-object System.Security.AccessControl.FileSystemAccessRule ("NT VIRTUAL MACHINE\Virtual Machines", "FullControl","ContainerInherit,ObjectInherit" , "None", "Allow")
    $acl.SetAccessRule($vmGroupRule)
    Set-Acl -AclObject $acl -Path $Root 
    
    Salvestage see fail nimega set_perms.ps1 ja käivitage see:

    NB! Powershelli skriptide käitamiseks peate võib-olla käivitama käsu „Set-ExecutionPolicy -Scope process unstricted”.

    Click image for larger version

Name:	powershell.png
Views:	115
Size:	35.2 KB
ID:	327

    PHP Code:
    C:\Users\mathi\> .\set_perms.ps1 "C:\Program Files\Linux Containers"
    C:\Users\mathi\> 
    
    Nüüd kopeerige eelmises etapis lahtipakitud Ubuntu konteineri image .vhdx fail uvm.vhdx alla C:\Program Files\Linux Containers.

    6. Rohkem Dockeri ettevalmistust
    Docker Windows-le vajab Hyper-V -ga töötamiseks mõningaid väljalaske eelseid funktsioone. Kuigi need funktsioonid pole varem tehtud Docker CE installis veel saadavaks, saab vajalikud failid alla laadida saidilt https://master.dockerproject.org/

    Click image for larger version

Name:	master.png
Views:	122
Size:	92.6 KB
ID:	328

    Laadige dockerd.exe ja docker.exe saidilt ning asetage need kaks programmi kuskile turvalisse kohta, näiteks oma kausta. Neid kasutatakse järgmises etapis Ubuntu konteineri käivitamiseks.

    7. Käivitage Hyper-V-s Ubuntu konteiner
    Olete nüüd valmis konteinerit käivitama. Esmalt avage administraatorina käsurida (cmd.exe) ja käivitage dockerd.exe õiges keskkonnas:
    PHP Code:
    C:\Users\mathi\> set LCOW_SUPPORTED=1
    C:\Users\mathi\> .\dockerd.exe -D --data-root C:\lcow 
    
    Docker juba töötab?
    Kui Dockeri installer seab Dockeri alglaadimisel automaatselt käivitama, peate võib-olla enne ülaltoodud käskude käivitamist tööriistariba ikooni kaudu sulgema.

    Seejärel käivitage administraatorina Powershell ja käivitage docker.exe, juhendades sellel teie konteineri jaoks imaget tõmbama:
    PHP Code:
    C:\Users\mathi\> .\docker.exe pull ubuntu 
    
    Click image for larger version

Name:	mathi.png
Views:	118
Size:	46.8 KB
ID:	330
    Click image for larger version

Name:	mathi2.png
Views:	117
Size:	12.4 KB
ID:	329
    Click image for larger version

Name:	mathi3.png
Views:	111
Size:	9.3 KB
ID:	331

    Nüüd saame lõpuks konteineri käivitada. Käivitage docker.exe uuesti ja paluge tal käivitada uus image:
    PHP Code:
    C:\Users\mathi\> .\docker.exe run -it ubuntu 
    
    Click image for larger version

Name:	mathi4.png
Views:	107
Size:	11.8 KB
ID:	332

    Palju õnne! Olete oma süsteemi edukalt seadistanud kasutama Windowsis Hyper-V -ga konteinereid ja käivitanud oma Ubuntu konteineri.
  • reine
    IT huviline
    • Feb 2022
    • 38

    #2
    Jõudsin otsaga siia - 4. Laadige alla Ubuntu konteineri image
    tuli imelik pilt - lahti pakkida ei ole midagi - mingid FOOTER ja HEADER?
    Paluks abi ?

    Kommentaar

    • reine
      IT huviline
      • Feb 2022
      • 38

      #3
      Jõudsin siia - Salvestage see fail nimega set_perms.ps1 ja käivitage see:
      kuhu oleks soovitav see fail salvestada ?

      Kommentaar

      • reine
        IT huviline
        • Feb 2022
        • 38

        #4
        PS C:\Users\reine> .\set_perms.ps1 "C:\Program Files\Linux Containers"
        .\set_perms.ps1 : File C:\Users\reine\set_perms.ps1 cannot be loaded because running scripts is disabled on this
        system. For more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
        At line:1 char:1
        + .\set_perms.ps1 "C:\Program Files\Linux Containers"
        + ~~~~~~~~~~~~~~~
        + CategoryInfo : SecurityError: ( [], PSSecurityException
        + FullyQualifiedErrorId : UnauthorizedAccess
        PS C:\Users\reine>

        Kommentaar

        • reine
          IT huviline
          • Feb 2022
          • 38

          #5
          Millise policy ma käivitan:
          To change your execution policy:

          PowerShellCopy
          Set-ExecutionPolicy -ExecutionPolicy <PolicyName>
          For example:

          PowerShellCopy
          Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
          To set the execution policy in a particular scope:

          PowerShellCopy
          Set-ExecutionPolicy -ExecutionPolicy <PolicyName> -Scope <scope>
          For example:

          PowerShellCopy
          Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

          Kommentaar

          • root
            Huviline
            • Oct 2021
            • 318

            #6
            Need õpetused ei ole 100% kõigil toimivad, nagu ka Windows 11, kellel toimib algusest saati laitmatult (nt minul) ja teised kes ei saa kohe kuidagi temaga hakkama. Teiseks nende õpetustega on see, et midagi pead ikka ise ka teadma mida teed ja käsurida võiks natuke tunda. Kolmandaks on veel see, et peaks suutma ise natuke osata vajadusel juurde googeldada.
            Kui bootiva USB pulga tegemine tekitab veidi raskusi, siis ma ei soovita kohe hakata Linuxi konteinereid paigaldama.

            Kommentaar

            • reine
              IT huviline
              • Feb 2022
              • 38

              #7
              Bootivad pulgad sain valmis - mõlemad - nii v20.04 kui ka v15.04.
              Bootimiseks kogun veel veidi julgust ja teadmisi.

              Kommentaar

              • reine
                IT huviline
                • Feb 2022
                • 38

                #8
                Siiski küsin veel - millise policy soovitad mul seada?

                Kommentaar

                • reine
                  IT huviline
                  • Feb 2022
                  • 38

                  #9
                  Milline vahe on Ubuntu v15.04 ja v20.04 vahel?

                  Kommentaar

                  • root
                    Huviline
                    • Oct 2021
                    • 318

                    #10

                    Kommentaar

                    • reine
                      IT huviline
                      • Feb 2022
                      • 38

                      #11
                      OK - tänud !

                      Kommentaar

                      Töötlen...