Android

Jak nainstalovat a používat docker na centos 7

How to Setup Multinode Hadoop 2 on CentOS/RHEL Using VirtualBox

How to Setup Multinode Hadoop 2 on CentOS/RHEL Using VirtualBox

Obsah:

Anonim

Docker je technologie kontejnerizace, která umožňuje rychle vytvářet, testovat a zavádět aplikace jako přenosné, soběstačné kontejnery, které mohou běžet prakticky kdekoli.

V tomto tutoriálu projdeme, jak nainstalovat Docker CE na CentOS 7 a prozkoumat základní koncepty a příkazy Docker.

Předpoklady

Před pokračováním v tomto kurzu se ujistěte, že jsou splněny následující předpoklady:

  • Server CentOS 7Jste přihlášeni jako uživatel bez oprávnění root s oprávněními sudo. V této příručce se dozvíte, jak vytvořit nového uživatele sudo.

Nainstalujte Docker na CentOS

Ačkoli je balíček Docker k dispozici v oficiálním úložišti CentOS 7, nemusí to být vždy nejnovější verze. Doporučeným přístupem je instalace Dockeru z repozitářů Dockeru.

Chcete-li nainstalovat Docker na svůj server CentOS 7, postupujte takto:

  1. Začněte aktualizací systémových balíčků a nainstalujte požadované závislosti:

    sudo yum update sudo yum install yum-utils device-mapper-persistent-data lvm2

    Poté spusťte následující příkaz, který přidá do vašeho systému stabilní úložiště Docker:

    sudo yum-config-manager --add-repo

    Nyní, když je úložiště Docker povoleno, nainstalujte nejnovější verzi Docker CE (Community Edition) pomocí yum zadáním:

    sudo yum install docker-ce

    Po instalaci balíčku Docker spusťte démona Docker a povolte jeho automatické spuštění v době spuštění:

    sudo systemctl start docker sudo systemctl enable docker

    Ověřte, zda je spuštěna služba Docker:

    sudo systemctl status docker

    Výstup by měl vypadat asi takto:

    ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2018-10-31 08:51:20 UTC; 7s ago Docs: https://docs.docker.com Main PID: 2492 (dockerd) CGroup: /system.slice/docker.service ├─2492 /usr/bin/dockerd └─2498 docker-containerd --config /var/run/docker/containerd/containerd.toml

    V době psaní aktuální verze 18.06.1 je 18.06.1 pro tisk typu Docker verze:

    docker -v

    Docker version 18.06.1-ce, build e68fc7a

Spuštění příkazu Docker without Sudo

Ve výchozím nastavení vyžaduje Docker administrátorská oprávnění. Pokud chcete spustit příkazy Docker jako uživatel bez oprávnění root bez předběžné přípravy sudo , musíte přidat svého uživatele do skupiny ukotvitelných stanic, která se vytvoří během instalace balíčku Docker CE. Můžete to udělat zadáním:

sudo usermod -aG docker $USER

$USER je proměnná prostředí, která obsahuje vaše uživatelské jméno.

Odhlaste se a přihlaste se zpět, aby se obnovilo členství ve skupině.

Chcete-li ověřit, zda je Docker úspěšně nainstalován a zda můžete spustit dokovací příkazy bez sudo, zadejte následující příkaz, který stáhne testovací obraz, spustí jej v kontejneru, vytiskne zprávu „Hello from Docker“ a skončí:

docker container run hello-world

Výstup by měl vypadat takto:

Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 9bb5a5d4561a: Pull complete Digest: sha256:f5233545e43561214ca4891fd1157e1c3c563316ed8e237750d59bde73361e77 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.

Rozhraní příkazového řádku Docker

Nyní, když máme funkční Dockerovu instalaci, pojďme se podívat na základní syntaxi CLI ukotvitelného panelu.

Příkazový řádek doku má následující podobu:

docker

Všechny dostupné příkazy můžete vypsat zadáním docker bez parametrů:

docker

docker --help

Docker Images

Obraz Docker je tvořen řadou vrstev představujících instrukce v Dockerfile obrazu, které tvoří spustitelnou softwarovou aplikaci. Obrázek je neměnný binární soubor obsahující aplikaci a všechny další závislosti, jako jsou binární soubory, knihovny a pokyny nezbytné pro spuštění aplikace. Stručně řečeno, obrázek Docker je v podstatě snímek kontejneru Docker.

Docker Hub je cloudová registrační služba, která se mimo jiné používá k uchovávání obrázků Docker ve veřejném nebo soukromém úložišti.

Chcete-li vyhledat obrázek v úložišti Docker Hub, stačí použít dílčí příkaz pro search . Chcete-li například vyhledat obrázek CentOS, spusťte:

docker search centos

Výstup by měl vypadat takto:

NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 4257 ansible/centos7-ansible Ansible on Centos7 109 jdeathe/centos-ssh CentOS-6 6.9 x86_64 / CentOS-7 7.4.1708 x86_… 94 consol/centos-xfce-vnc Centos container with "headless" VNC session… 52 imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 40 tutum/centos Simple CentOS docker image with SSH access 39

Jak vidíte, výsledky vyhledávání vytisknou tabulku s pěti sloupci, NAME , DESCRIPTION , STARS , OFFICIAL a AUTOMATED . Oficiální obrázek je obrázek, který se Docker vyvíjí ve spolupráci s partnery na předcházejícím trhu.

Pokud chceme stáhnout oficiální sestavení CentOS 7, můžeme to provést pomocí dílčího příkazu image pull :

docker image pull centos

Using default tag: latest latest: Pulling from library/centos 469cfcc7a4b3: Pull complete Digest: sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Status: Downloaded newer image for centos:latest

V závislosti na rychlosti internetu může stahování trvat několik sekund nebo minut. Po stažení obrázku můžeme obrázky zobrazit pomocí:

docker image ls

Výstup by měl vypadat asi takto:

REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest e38bc07ac18e 3 weeks ago 1.85kB centos latest e934aafc2206 4 weeks ago 199MB

Pokud chcete z nějakého důvodu odstranit obrázek, můžete to udělat pomocí dílčího příkazu image rm :

docker image rm centos

Untagged: centos:latest Untagged: centos@sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Deleted: sha256:e934aafc22064b7322c0250f1e32e5ce93b2d19b356f4537f5864bd102e8531f Deleted: sha256:43e653f84b79ba52711b0f726ff5a7fd1162ae9df4be76ca1de8370b8bbf9bb0

Dokovací kontejnery

Instance obrázku se nazývá kontejner. Kontejner představuje runtime pro jednu aplikaci, proces nebo službu.

Nemusí to být nejvhodnější srovnání, ale pokud jste programátor, můžete považovat obrázek Docker za třídu a kontejner Docker jako instanci třídy.

Můžeme spustit, zastavit, odebrat a spravovat kontejner s dílčím docker container .

Následující příkaz spustí kontejner Docker založený na obrázku CentoOS. Pokud obrázek nemáte místně, stáhne jej nejprve:

docker container run centos

Na první pohled se vám může zdát, že se vůbec nic nestalo. To není pravda. Kontejner CentOS se zastaví okamžitě po zavedení systému, protože nemá dlouhodobý proces a my jsme neposkytli žádný příkaz, takže se kontejner zavedl, spustil prázdný příkaz a poté opustil.

Přepínač -it nám umožňuje komunikovat s kontejnerem pomocí příkazového řádku. Spuštění typu interaktivního kontejneru:

docker container run -it centos /bin/bash

Jak můžete vidět z výstupu, jakmile je kontejner spuštěn, příkazový řádek se změní, což znamená, že nyní pracujete z vnitřku kontejneru:

#

Chcete-li zobrazit seznam běžících kontejnerů, zadejte:

docker container ls

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli Pokud nemáte spuštěné kontejnery, bude výstup prázdný.

Chcete-li zobrazit spuštěné i zastavené kontejnery, předejte přepínač -a :

docker container ls -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli c55680af670c centos "/bin/bash" 30 minutes ago Exited (0) 30 minutes ago modest_hawking c6a147d1bc8a hello-world "/hello" 20 hours ago Exited (0) 20 hours ago sleepy_shannon

Chcete-li odstranit jeden nebo více kontejnerů, zkopírujte ID kontejneru (nebo ID) shora a vložte je za dílčí příkaz container rm :

docker container rm c55680af670c

Závěr

Naučili jste se, jak nainstalovat Docker do počítače CentOS 7 a jak stahovat obrázky Docker a spravovat kontejnery Docker. Můžete si také přečíst informace o aplikaci Docker Compose, které vám umožní definovat a spustit aplikace Docker pro více kontejnerů.

Tento tutoriál stěží škrábe povrch ekosystému Docker. V některých našich dalších článcích se budeme i nadále zabývat dalšími aspekty Dockera. Další informace o Dockeru najdete v oficiální dokumentaci Dockeru.

doková centra