GNU/Linux >> Znalost Linux >  >> Panels >> Docker

Některé příkazy DOCKER

Zde je několik základních příkazů Dockeru:
Viz také:https://github.com/wsargent/docker-cheat-sheet

Instalace nejnovějšího prostředí Docker v systému Linux:

curl -sSL https://get.docker.com/ | sh

Spusťte terminál dockeru v OSX

bash --login '/Applications/Docker/Docker Quickstart Terminal.app/Contents/Resources/Scripts/start.sh'

Informace: Názvy kontejnerů bez '/' v názvu odkazují na základní šablony veřejných kontejnerů
Názvy kontejnerů s '/' odkazují na uživatelské kontejnery ve formátu:username/BasicContainer
Názvy kontejnerů se ':' odkazují na tag, který se běžně používá jako podvracení základních/uživatelských kontejnerů

Vyhledejte obrázky v úložišti Internet Docker
docker search ubuntu

Stáhněte si obrázek dockeru z internetu do místního úložiště
docker pull ubuntu:14.04

Vypsat místní obrázky dockeru:
docker images

Spusťte vlastní obrázek (myname/ubuntu:tmpl_1) na pozadí a dejte kontejneru název MyUbuntu
docker run -itd --name=MyUbuntu myname/ubuntu:tmpl_1

Připojte se ke kontejneru, abyste v něm mohli pracovat (stiskněte 2 x Enter a získáte bash)
docker attach MyUbuntu

Chcete-li opustit kontejner, aniž by byl automaticky zastaven:
CTRL-P + CTRL-Q

Když je v kontejneru bash vydán příkaz ^D (neboli příkaz exit), kontejner se zastaví. Chcete-li jej restartovat, např.
docker start MyUbuntu

Seznam spuštěných kontejnerů
docker ps
Výpis všech kontejnerů dockeru (spuštěné a zastavené)
docker ps -a
Poznámky ke spuštěným kontejnerům:
docker run -t -i → lze odpojit pomocí ^P^Q a znovu připojit pomocí ukotvitelného připojení
docker run -i → nelze odpojit pomocí ^P^Q; přeruší stdin
docker run → nelze odpojit pomocí ^P^Q; může klient SIGKILL; lze znovu připojit pomocí ukotvitelného připojení

ŘEŠENÍ PROBLÉMŮ:
1) Pokud se po zadání příkazu docker zobrazí tato chybová zpráva:
Error response from daemon: client is newer than server (client API version: x.xx, server API version: y.yy)
Pro synchronizaci jejich verzí stačí spustit následující příkaz:
docker-machine upgrade

Vytvoření nového místního obrázku dockeru z obrázku vytaženého z veřejného (internetu)
#### Metoda COMMIT ####
Spusťte kontejner založený na tomto obrázku
docker run -t -i ubuntu:14.04 /bin/bash
Poznámka:Zapamatujte si ID kontejneru, které je ve výzvě bash (potřebné k vytvoření nového založeného na tomto)
např. root@ba7cbe2cd3ce:/# (ba7cbe2cd3ce je ID kontejneru)
Nainstalujte požadované softwarové balíčky (aktualizace apt-get &&instalace apt-get …. )
např. apt-get update &&apt-get -y upgrade; apt-get install mc ssh fail2ban nmap ngrep iftop iotop htop
Po dokončení zastavte kontejner odpojením od bash pomocí
exit or ^D
Nyní uložte nový obrázek lokálně:
docker commit -m "My special container template" -a "My Name" ba7cbe2cd3ce myname/ubuntu:v001
Tímto místně uložíte upravený kontejner jako nový obrázek s názvem:myname/ubuntu:v001
Zkontrolujte:
docker images

#### Metoda 'Dockerfile'
Vytvořte adresář, ve kterém vytvoříte speciální soubor s názvem Dockerfile
kam budou zapsány pokyny, jak sestavit nový obraz.
mkdir ubuntu_template_001
cd ubuntu_template_001
touch Dockerfile
mcedit Dockerfile

————– Obsah —————-
# This is a comment
FROM ubuntu:14.04
MAINTAINER My Name <mmyname @mydomain.com>
RUN apt-get update && apt-get install -y mc ssh fail2ban nmap ngrep iftop iotop htop
RUN apt-get -y install postfix

– Uložte soubor a poté spusťte následující příkaz k vytvoření obrazu:
docker build -t myname/ubuntu_template_001 .
Poznámka:'.' na konci příkazu říká, kde je soubor Dockerfile
Veškerý výstup instalace a ID obrázku se zobrazí na samém konci následovně:
—> 8578743d7b30

– Podíváme se na všechny vytvořené obrázky:
docker images

Výsledek:

REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
<none> <none> 8578743d7b30 3 minutes ago 290 MB
myname/ubuntu v001 9bc5a639a1de 20 minutes ago 318.6 MB

– Vidíme, že obrázek s ID 8578743d7b30 nemá název ani značku.
Nyní mu dáme název:tag
docker tag 8578743d7b30 myname/ubuntu:v002

– Znovu zkontrolujte seznam obrázků:
docker images
Výsledek:
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
myname/ubuntu v002 8578743d7b30 16 minutes ago 290 MB
myname/ubuntu v001 9bc5a639a1de 33 minutes ago 318.6 MB

– Nyní můžeme spustit kontejner založený na tomto novém obrázku
docker run -it --name "Server2" myname/ubuntu:v002 bash -c 'service ssh start ; ifconfig eth0; bash'

Odstranění obrázku z místního úložiště
docker rmi michel/ubuntu:v002

Odebrání kontejneru z místního dockerového systému
docker rm ContainerName
nebo
docker rm ContainerID
Spuštění programu uvnitř běžícího, ale nepřipojeného kontejneru:
docker exec -t -i ContainerName bash -c 'command'


Docker
  1. Úvod do Dockeru

  2. Příkazy Dockeru Rychlý průvodce Cheat Sheet

  3. Jak spustit MySQL v kontejneru Docker

  1. Jak SSH do kontejneru Docker

  2. Jak přiřadit statickou IP ke kontejneru Docker

  3. Jak nainstalovat Vim do kontejneru Docker

  1. Docker CMD vs. Entrypoint Commands:Jaký je rozdíl?

  2. 10 doporučených postupů zabezpečení Dockeru

  3. Jak vypsat Docker kontejnery