GNU/Linux >> Znalost Linux >  >> Cent OS

Jak používat příkaz Docker Run s příklady

Úvod

Jedním z prvních a nejdůležitějších příkazů, které se uživatelé Dockeru naučí, je docker run příkaz. To není žádným překvapením, protože jeho primární funkcí je vytvářet a provozovat kontejnery.

Existuje mnoho různých způsobů, jak spustit kontejner. Přidáním atributů do základní syntaxe můžete nakonfigurovat kontejner tak, aby běžel v odděleném režimu, nastavit název kontejneru, připojit svazek a provádět mnoho dalších úkolů.

V tomto tutoriálu se naučíte používat docker run příkazy s příklady.

Předpoklady

  • Přístup k příkazovému řádku/oknu terminálu
  • Uživatelský účet s sudo privilegia
  • Stávající instalace Dockeru

Jak používat docker spustit příkaz

Základní syntaxe příkazu je:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

Chcete-li spustit kontejner, jediná věc, kterou musíte do příkazu zahrnout, je obrázek, na kterém je založen:

docker run [docker_image]

Kontejnery můžete spouštět z místně uložených obrazů Dockeru. Pokud používáte obraz, který není ve vašem systému, software jej stáhne z online registru.

Jako příklad jsme použili Dockerfile k vytvoření ukázkového obrázku Dockeru s úkolem opakovat zprávu Hello World . U nás má obrázek ID e98b6ec72f51 . Název vašeho obrázku se bude lišit v závislosti na kontejneru, který chcete spustit.

Příkaz ke spuštění našeho vzorového kontejneru by byl:

docker run e98b6ec72f51

Kontejner provede předepsaný úkol (ozvěnou zprávu Hello World ) a poté se zastaví.

Spusťte kontejner pod konkrétním názvem

Když použijete základní run Docker automaticky vygeneruje název kontejneru s řetězcem náhodně vybraných čísel a písmen.

Vzhledem k tomu, že existuje malá šance, že si budete moci zapamatovat nebo rozpoznat kontejnery podle těchto obecných názvů, zvažte nastavení názvu kontejneru na něco lépe zapamatovatelného.

Pomocí --name atribut umožňuje přiřadit název kontejneru. Příkaz pro spuštění kontejneru pod konkrétním názvem je:

docker container run --name [container_name] [docker_image]

Můžeme například spustit kontejner vzorku a dát mu název container_instance pomocí příkazu:

docker container run --name container_instance e98b6ec72f51

Zda jste úspěšně nastavili název kontejneru můžete zkontrolovat zobrazením seznamu všech kontejnerů (spuštěných i zastavených) příkazem:

docker ps -a

Stejně jako na obrázku níže byste měli vidět svůj nově vytvořený kontejner.

Spusťte kontejner na pozadí (oddělený režim)

Kontejner lze spustit dvěma způsoby – v režimu připojení (v popředí) nebo v odpojeném režimu (na pozadí).

Ve výchozím nastavení Docker spouští kontejner v připojeném režimu. To znamená, že je připojen k relaci terminálu, kde zobrazuje výstup a zprávy.

Pokud chcete kontejner a aktuální relaci terminálu ponechat oddělené, můžete kontejner spustit na pozadí pomocí -d atribut. Použití odděleného režimu také umožňuje zavřít otevřenou relaci terminálu bez zastavení kontejneru.

Příkaz pro spuštění kontejneru na pozadí je:

docker container run -d [docker_image]

V našem příkladu je příkaz:

docker container run -d e98b6ec72f51

Výstup, který obdržíte, bude podobný tomu, který vidíte na obrázku výše. Kontejner spustí proces a poté se zastaví. V relaci terminálu se nezobrazí žádný jiný výstup.

Interaktivně spustit kontejner

Docker vám umožňuje spustit kontejner v interaktivním režimu . To znamená, že můžete provádět příkazy uvnitř kontejneru, zatímco je stále spuštěn.

Interaktivním použitím kontejneru získáte přístup k příkazovému řádku uvnitř běžícího kontejneru. Chcete-li tak učinit, spusťte následující příkaz:

docker container run -it [docker_image] /bin/bash

Příkazový řádek se změní a přesunete se do bash shellu jako v příkladu níže.

Spusťte kontejner a publikujte porty kontejneru

Když spustíte kontejner, jediný způsob, jak získat přístup k procesu, je z jeho nitra. Chcete-li povolit externí připojení ke kontejneru, musíte otevřít (publikovat) konkrétní porty.

Musíte přidat -p možnost docker run příkaz a také následující informace:

-p [host_ip]:[host_port]:[container_port]

host_ip prvek je volitelný a při spouštění příkazu jej nemusíte zadávat.

Chcete-li například namapovat port TCP 80 v kontejneru na port 8080 na hostiteli Docker, spustili byste:

docker container run -p 8080:80 [docker_image]

Spusťte kontejner a připojte svazky hostitele

Docker kontejnery neukládají data, která produkují. Jakmile je proces dokončen, kontejner se zastaví a vše v něm je odstraněno.

Pokud chcete mít trvalá data, která jsou uložena i po zastavení kontejneru, musíte povolit sdílení úložných objemů.

Pro připojení svazků použijte -v atribut se zadaným umístěním adresáře, kam chcete data uložit, následovaným místem, kde budou tato data umístěna uvnitř kontejneru.

-v [/host/volume/location]:[/container/storage]

Celý docker container run příkaz je:

docker container run -v [/host/volume/location]:[/container/storage] [docker_image]

Spusťte kontejner Docker a po dokončení procesu jej odeberte

Jakmile kontejner provede své úkoly, zastaví se, ale souborový systém, ze kterého se skládá, zůstává v systému.

Pokud potřebujete kontejner pouze k provedení nastíněné úlohy a poté jej ani jeho souborový systém nepoužíváte, můžete jej nastavit tak, aby se po dokončení odstranil.

Chcete-li spustit kontejner, který bude po ukončení automaticky odstraněn, použijte příkaz:

docker container run --rm [docker_image]

Cent OS
  1. Jak používat příkaz ethtool s příklady

  2. Jak používat Linux Hexdump Command s praktickými příklady

  3. Jak spustit příkaz na spuštěném kontejneru Docker

  1. Jak používat příkaz wget s příklady

  2. Jak používat příkaz su v Linuxu s příklady

  3. Příkaz SCP v Linuxu:Jak jej používat, s příklady

  1. Jak používat Linux Shutdown Command s příklady

  2. Jak používat w Command v Linuxu s příklady

  3. Jak používat příkaz k hodinkám Linux s příklady