Ubuntu Suomen keskustelualueet

Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: Snufkin - 03.07.23 - klo:10.57

Otsikko: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 03.07.23 - klo:10.57
Moi!

Yritin asentaa tuota Docker Desktopia, mutta en saa pelaamaan. Luin ohjeista (https://docs.docker.com/desktop/install/linux-install/), että pitäisi olla "KVM virtualization support."

Sitten löysin tällaisen ohjeen (https://www.tecmint.com/install-kvm-on-ubuntu/) ja sieltä:

Koodia: [Valitse]
egrep -c '(vmx|svm)' /proc/cpuinfo
...antaa tulokseksi 0.

Onko tuo merkki siitä, ettei läppärini prossu tue virtuaalikoneita vai että on joku asetus, josta asiaan voi vaikuttaa?

Toinen yritelmä indikoi samaa. 
Koodia: [Valitse]
$ sudo kvm-ok
INFO: Your CPU does not support KVM extensions
KVM acceleration can NOT be used

Kaipaisin lähinnä vahvistuksen, että olen ymmärtänyt asian oikein: prossu ei tue KVM:ää eikä asialle ole mitään tehtävissä?

Jos näin on, niin menetänkö vain tuon graafisen käyttöliittymän ja tuo Docker toimii esim. komentoriviltä, jos asennan sen Enginen?

(Taustalla on web development -kurssi, jossa tätä dockeria tarvitaan - ja onhan noihin hyvä perehtyä muutenkin) 

Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: nm - 03.07.23 - klo:11.58
Koodia: [Valitse]
egrep -c '(vmx|svm)' /proc/cpuinfo
...antaa tulokseksi 0.

Onko tuo merkki siitä, ettei läppärini prossu tue virtuaalikoneita vai että on joku asetus, josta asiaan voi vaikuttaa?

Kaksi vaihtoehtoa:

a) Prosessori ei tue virtualisointia. Mikä malli on kyseessä tarkalleen?

b) Prosessori tukee virtualisointia, mutta ominaisuus on kytketty pois päältä BIOS/UEFI-asetuksissa.


Jos näin on, niin menetänkö vain tuon graafisen käyttöliittymän ja tuo Docker toimii esim. komentoriviltä, jos asennan sen Enginen?

(Taustalla on web development -kurssi, jossa tätä dockeria tarvitaan - ja onhan noihin hyvä perehtyä muutenkin) 

Docker Desktop on alun perin suunniteltu Windows ja macOS-järjestelmiin, joissa ei ole alla natiivia Linux-kerneliä. Se ajaa virtuaalikoneessa Linuxia ja sen sisällä Dockeria kontteineen. Aiemmin Desktopista ei edes ollut olemassa Linux-versiota, mutta nähtävästi sellainen on nyt viime vuonna julkaistu.

Pitäisin Docker Desktopia melko tarpeettomana Linuxissa. Pelkkä engine riittää oikein hyvin, enkä ole töissä koskaan kaivannut Desktop-sovellusta.
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 03.07.23 - klo:12.05
Kaksi vaihtoehtoa:

a) Prosessori ei tue virtualisointia. Mikä malli on kyseessä tarkalleen?

b) Prosessori tukee virtualisointia, mutta ominaisuus on kytketty pois päältä BIOS/UEFI-asetuksissa.

Vendor ID:              GenuineIntel
  Model name:           Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
    CPU family:         6
    Model:              42

Pitäisin Docker Desktopia melko tarpeettomana Linuxissa. Pelkkä engine riittää oikein hyvin, enkä ole töissä koskaan kaivannut Desktop-sovellusta.

Ok, hyvä tietää. Lähinnä olisin kaivannut tuota graafista hallintapaneelia, mutta kaipa sitä parjää komentorivilläkin.
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: nm - 03.07.23 - klo:12.11
  Model name:           Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz

Prosessorisi tukee Intelin VT-x -rautavirtualisointia:

https://ark.intel.com/content/www/us/en/ark/products/52229/intel-core-i52520m-processor-3m-cache-up-to-3-20-ghz.html
Lainaus
Intel® Virtualization Technology (VT-x) ‡
Yes

Ominaisuus on siis todennäköisesti kytketty pois päältä BIOS-asetuksissa.


Pitäisin Docker Desktopia melko tarpeettomana Linuxissa. Pelkkä engine riittää oikein hyvin, enkä ole töissä koskaan kaivannut Desktop-sovellusta.

Ok, hyvä tietää. Lähinnä olisin kaivannut tuota graafista hallintapaneelia, mutta kaipa sitä parjää komentorivilläkin.

Muitakin käyttöliittymiä on olemassa. Esimerkiksi Portainer: https://www.portainer.io/blog/portainer-your-docker-gui-for-your-ubuntu-linux-desktop

Komentorivi on kuitenkin hyvä opetella ensin.
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 03.07.23 - klo:12.32

Prosessorisi tukee Intelin VT-x -rautavirtualisointia:
...
Lainaus
Intel® Virtualization Technology (VT-x) ‡
Yes

Ominaisuus on siis todennäköisesti kytketty pois päältä BIOS-asetuksissa.

...
Komentorivi on kuitenkin hyvä opetella ensin.

Kiitos. Mä nyt rohkaistuin ensin yrittämään tuolla komentorivillä. Jos menee hermo, niin sitten pitää koittaa tuota Biosin säätöä ja Desktopin asennusta.  :)
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: _Pete_ - 04.07.23 - klo:09.30
Kiitos. Mä nyt rohkaistuin ensin yrittämään tuolla komentorivillä. Jos menee hermo, niin sitten pitää koittaa tuota Biosin säätöä ja Desktopin asennusta.  :)

BIOS säätö pitää joka tapauksessa tehdä ensiksi.

Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: nm - 04.07.23 - klo:11.30
Kiitos. Mä nyt rohkaistuin ensin yrittämään tuolla komentorivillä. Jos menee hermo, niin sitten pitää koittaa tuota Biosin säätöä ja Desktopin asennusta.  :)

BIOS säätö pitää joka tapauksessa tehdä ensiksi.

Paitsi jos käyttää pelkkää Dockeria komentorivin tai muun käyttöliittymän kuin Docker Desktopin kautta. Docker Engine ei tarvitse virtualisointia lainkaan.
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 06.07.23 - klo:12.18
Yritin asentaa Dockerin ja onnistuinkin. Testiohjelma toimii ok.

Mutta sitten kun pitäisi ajaa docker-composea, niin tulee virheilmoituksia

Koodia: [Valitse]
$ docker-compose up --build
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 699, in urlopen
...
  File "/usr/lib/python3/dist-packages/docker/transport/unixconn.py", line 30, in connect
    sock.connect(self.unix_socket)
PermissionError: [Errno 13] Permission denied
(Virheimoitus on pitkä ja siinä usea tuollainen error, tässä vain näyte näin alkuun)

Tarvittavat tiedostot pitäisi löytyä:

Koodia: [Valitse]
$ tree
.
├── app.js
├── docker-compose.yml
└── Dockerfile

Ideoita, mistä etsiä  vikaa?
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: nm - 06.07.23 - klo:13.13
Oletko lisännyt käyttäjätunnuksesi docker-ryhmään:

Koodia: [Valitse]
sudo usermod -aG docker $USER
Kirjaudu sitten ulos työpöydältä ja takaisin sisään.

Muuten tarvittavia oikeuksia ei ole, vaan docker-komento ja muut docker-työkalut pitäisi suorittaa sudolla.


Nykyisin compose asennetaan yleensä Dockeriin liitännäisenä (https://docs.docker.com/compose/install/linux/), jolloin se toimii docker-komennon alikomentona (docker compose …)
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 06.07.23 - klo:13.47
Tuo käyttöoikeus auttoi sen verran, että ongelma vaihtui. :)
Koodia: [Valitse]
$ docker-compose up --build
Creating network "wsd_default" with the default driver
Building app
Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg.
STEP 1/6: FROM denoland/deno:alpine-1.29.2
Error: error creating build container: short-name "denoland/deno:alpine-1.29.2" did not resolve to an alias and
no unqualified-search registries are defined in "/etc/containers/registries.conf"
ERROR: Service 'app' failed to build : Build failed

Tuon Deno toimii koneella ok.

Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: nm - 06.07.23 - klo:15.11
Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg.

Hmm. Näyttää siltä että Docker Engine/CLI ei ole asennettuna, vaan käytössä on Podman. Mitä Docker-paketteja järjestelmässäsi on?

Koodia: [Valitse]
dpkg -l | grep docker

STEP 1/6: FROM denoland/deno:alpine-1.29.2
Error: error creating build container: short-name "denoland/deno:alpine-1.29.2" did not resolve to an alias and
no unqualified-search registries are defined in "/etc/containers/registries.conf"

denoland/deno-imaget sijaitsevat Docker Hubissa, ja kyseinen registry ei sisälly Podmanin vakiokonfiguraatioon. Se on mahdollista lisätä virheilmoituksessa mainittuun tiedostoon, mutta suosittelisin selvittämään sen sijaan juurisyyn eli Docker Enginen asennusongelman.
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 06.07.23 - klo:16.06
Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg.

Hmm. Näyttää siltä että Docker Engine/CLI ei ole asennettuna, vaan käytössä on Podman. Mitä Docker-paketteja järjestelmässäsi on?

Luin jostain että tuo CLI pitäisi tulla Enginen mukana, mutta tältä näyttää:

Koodia: [Valitse]
$ dpkg -l | grep docker
ii  docker-compose                                   1.29.2-1                                all          define and run multi-container Docker applications with YAML
rc  docker.io                                        20.10.21-0ubuntu1~22.04.3               amd64        Linux container runtime
ii  podman-docker                                    3.4.4+ds1-1ubuntu1.22.04.1              amd64        engine to run OCI-based containers in Pods - wrapper for docker
ii  python3-docker                                   5.0.3-1                                 all          Python 3 wrapper to access docker.io's control socket
ii  python3-dockerpty                                0.4.1-2                                 all          Pseudo-tty handler for docker Python client (Python 3.x)
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: nm - 06.07.23 - klo:16.24
Koodia: [Valitse]
rc  docker.io                                        20.10.21-0ubuntu1~22.04.3               amd64        Linux container runtime
ii  podman-docker                                    3.4.4+ds1-1ubuntu1.22.04.1              amd64        engine to run OCI-based containers in Pods - wrapper for docker

Tuosta nähdään, että paketti docker.io on ollut asennettuna, mutta se on poistettu järjestelmästä (rc tarkoittaa, että asetustiedostot ovat vielä levyllä). Tuo on varmaan Docker Desktopin jälkiä.

Docker-komento tulee tällä hetkellä paketista podman-docker, mutta se siis ohjaa Podmania eikä Dockeria.

Docker Enginen community edition ei ole asennettuna. Poista podman-docker ja asenna Docker CE tämän ohjeen mukaan: https://docs.docker.com/engine/install/ubuntu/
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 06.07.23 - klo:16.47
Koodia: [Valitse]
rc  docker.io                                        20.10.21-0ubuntu1~22.04.3               amd64        Linux container runtime
ii  podman-docker                                    3.4.4+ds1-1ubuntu1.22.04.1              amd64        engine to run OCI-based containers in Pods - wrapper for docker

Tuosta nähdään, että paketti docker.io on ollut asennettuna, mutta se on poistettu järjestelmästä (rc tarkoittaa, että asetustiedostot ovat vielä levyllä). Tuo on varmaan Docker Desktopin jälkiä.

Docker-komento tulee tällä hetkellä paketista podman-docker, mutta se siis ohjaa Podmania eikä Dockeria.

Docker Enginen community edition ei ole asennettuna. Poista podman-docker ja asenna Docker CE tämän ohjeen mukaan: https://docs.docker.com/engine/install/ubuntu/

Voisi johtua siitä, että yritin asentaa tuon Desktopin, mutta ei onnistunut. Latasin epähuomiossa amd-version, joka tuli ohjeiden mukaan tehdessä. Intel-versiota en löytänyt. Minulla siis nyt eri läppäri, johon yritän tätä asentaa. Siinä toimii tuo virtuaalikone.

Yritän poistaa kaiken ja ladata tuon Enginen uudelleen.
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 06.07.23 - klo:16.54
Mites tämä poistetaan? Ei lähde apt-get removella

Koodia: [Valitse]
$ dpkg -l | grep docker
rc  docker.io                             20.10.21-0ubuntu1~22.04.3               amd64        Linux container runtime
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: nm - 06.07.23 - klo:17.00
Voisi johtua siitä, että yritin asentaa tuon Desktopin, mutta ei onnistunut. Latasin epähuomiossa amd-version, joka tuli ohjeiden mukaan tehdessä. Intel-versiota en löytänyt.

amd64 on Debian- ja Ubuntu-pohjaisten jakelujen termi x86-64-käskykannalle/-arkkitehtuurille, johon sekä AMD:n että Intelin nykyiset prosessorit perustuvat. Kyseinen arkkitehtuuri on alun perin AMD:n kehittämä, ja Intel joutui taipumaan tukemaan sitä Itaniumin epäonnistuttua.

Eli sinulla oli oikea versio asennettuna ja ongelma johtui luultavasti vain siitä, että prosessorin virtualisointituki on kytketty pois päältä biosissa.


Mites tämä poistetaan? Ei lähde apt-get removella

Koodia: [Valitse]
$ dpkg -l | grep docker
rc  docker.io                             20.10.21-0ubuntu1~22.04.3               amd64        Linux container runtime

Koodia: [Valitse]
sudo apt purge docker.io
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 06.07.23 - klo:17.15
Eli sinulla oli oikea versio asennettuna ja ongelma johtui luultavasti vain siitä, että prosessorin virtualisointituki on kytketty pois päältä biosissa.

No näin tuo kysely näyttää:
Koodia: [Valitse]
$ kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

Lainaus
Koodia: [Valitse]
sudo apt purge docker.io

Kiitos, tämä toimi. Nyt uusi yritys (Engine)...
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 06.07.23 - klo:17.27
Nyt näyttää tältä (tehty laittamasi linkin mukaan)

Koodia: [Valitse]
$ dpkg -l | grep docker
ii  docker-buildx-plugin                  0.10.5-1~ubuntu.22.04~jammy             amd64        Docker Buildx cli plugin.
ii  docker-ce                             5:24.0.2-1~ubuntu.22.04~jammy           amd64        Docker: the open-source application container engine
ii  docker-ce-cli                         5:24.0.2-1~ubuntu.22.04~jammy           amd64        Docker CLI: the open-source application container engine
ii  docker-ce-rootless-extras             5:24.0.2-1~ubuntu.22.04~jammy           amd64        Rootless support for Docker.
ii  docker-compose-plugin                 2.18.1-1~ubuntu.22.04~jammy             amd64        Docker Compose (V2) plugin for the Docker CLI.

Mutta sitten.. (Tuo käsky kurssin ohjeista, tarvittavat tiedostot ovat)
Koodia: [Valitse]
$ tree
.
├── app.js
├── docker-compose.yml
└── Dockerfile

$ docker-compose up --build
bash: /usr/bin/docker-compose: No such file or directory

Puuttuko multa vielä joku palikka?
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: nm - 06.07.23 - klo:18.45
Mutta sitten.. (Tuo käsky kurssin ohjeista, tarvittavat tiedostot ovat)
Koodia: [Valitse]
$ tree
.
├── app.js
├── docker-compose.yml
└── Dockerfile

$ docker-compose up --build
bash: /usr/bin/docker-compose: No such file or directory

Puuttuko multa vielä joku palikka?

Sinulla on nyt asennettuna Docker Compose -plugin, jolloin compose toimii dockerin alikomentona: docker-compose -> docker compose

Koodia: [Valitse]
docker compose up --build
Otsikko: Vs: Dockerin (Desktop) asennus
Kirjoitti: Snufkin - 06.07.23 - klo:19.34

Sinulla on nyt asennettuna Docker Compose -plugin, jolloin compose toimii dockerin alikomentona: docker-compose -> docker compose

Koodia: [Valitse]
docker compose up --build

Mahtavaa, nyt toimii! :D

Kiitos vielä avusta. Meinasi jo jäädä kurssi suorittamatta...