Docker je open source a populární virtualizace na úrovni operačního systému (běžně známá jako „kontejnerizace ”) technologie, která primárně běží na Linuxu a Windows. Docker usnadňuje vytváření, nasazení a spouštění aplikací pomocí kontejnerů .
S kontejnery , mohou vývojáři (a správci systému) zabalit aplikaci se vším, co je potřeba ke spuštění aplikace – kód, run-time, knihovny, proměnné prostředí a konfigurační soubory, a to vše odeslat jako jeden balíček. Ano, je to skvělé!
V tomto článku vám ukážeme, jak nainstalovat Docker CE (Community Edition) , vytvořte a spusťte kontejnery Docker na Ubuntu distribuce.
Instalace Docker CE (Community Edition) v Ubuntu
1. Chcete-li nainstalovat Docker CE , nejprve musíte odebrat starší verze Docker byly nazývány docker
, docker.io
nebo docker-engine
ze systému pomocí následujícího příkazu.
$ sudo apt-get remove docker docker-engine docker.io kontejnerovaný runc
2. Dále musíte nastavit úložiště Docker pro instalaci a aktualizaci Dockeru z úložiště pomocí následujících příkazů.
$ sudo apt-get update$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
3. Aktualizujte index balíčků apt a nainstalujte nejnovější verzi Docker CE pomocí následujících příkazů.
$ sudo apt-get update$ sudo apt-get install docker-ce docker-ce-cli containerd.ioInstalace Docker CE v Ubuntu
Čtení seznamů balíčků... HotovoBuilding strom závislostí Čtení informací o stavu... HotovoBudou nainstalovány následující dodatečné balíčky:aufs-tools cgroupfs-mount pigz Budou nainstalovány následující NOVÉ balíčky:aufs-tools cgroupfs- mount containerd.io docker-ce docker-ce-cli pigz0 upgradováno, 6 nově nainstalováno, 0 k odstranění a 167 neaktualizováno. Potřebujete získat 50,7 MB archivů. Po této operaci bude použito 243 MB dalšího místa na disku. chceš pokračovat? [Y/n] yGet:1 http://archive.ubuntu.com/ubuntu bionic/universe amd64 pigz amd64 2.4-1 [57,4 kB]Get:2 https://download.docker.com/linux/ubuntu bionic/ stabilní amd64 containerd.io amd64 1.2.4-1 [19,9 MB]Get:3 http://archive.ubuntu.com/ubuntu bionic/universe amd64 aufs-tools amd64 1:4.9+20170918-1ubuntu1 [104 kB] 4 http://archive.ubuntu.com/ubuntu bionic/universe amd64 cgroupfs-mount all 1.4 [6 320 B]Get:5 https://download.docker.com/linux/ubuntu bionic/stable amd64 docker-ce-cli amd64 5:18.09.3~3-0~ubuntu-bionic [13,1 MB]Get:6 https://download.docker.com/linux/ubuntu bionic/stable amd64 docker-ce amd64 5:18.09.3~3- 0~ubuntu-bionic [17,4 MB]Získáno 50,7 MB za 7 s (7 779 kB/s) ...
4. Po úspěšné instalaci Docker CE balíček, služba by se měla spouštět automaticky a měla by se automaticky spouštět při spouštění systému, její stav můžete zkontrolovat pomocí následujícího příkazu.
$ sudo systemctl status dockerKontrola stavu Docker CE
● docker.service – Docker Application Container Engine Načten:načten (/lib/systemd/system/docker.service; povoleno; přednastaveno dodavatelem:povoleno) Aktivní:aktivní (běžící) od středy 2019-03- 06 08:06:42 UTC; Před 2 min 18 s Dokumenty:https://docs.docker.com Hlavní PID:5274 (dockerd) Úkoly:8 CGroup:/system.slice/docker.service └─5274 /usr/bin/dockerd -H fd:// - -containerd=/run/containerd/containerd.sockMar 06 08:06:41 tecmint dockerd[5274]:time="2019-03-06T08:06:41.562587408Z" level=warning msg="Vaše jádro cgroup nepodporuje runtime"Mar 06 08:06:41 tecmint dockerd[5274]:time="2019-03-06T08:06:41.562767803Z" level=warning msg="Vaše jádro nepodporuje cgroup blkio weight"Mar 06:08:06 41 tecmint dockerd[5274]:time="2019-03-06T08:06:41.562966844Z" level=warning msg="Vaše jádro nepodporuje cgroup blkio weight_device"Mar 06 08:06:41[5tecmint time27 dockerd] ="2019-03-06T08:06:41.565298457Z" level=info msg="Načítání kontejnerů:start."Mar 06 08:06:41 tecmint dockerd[5274]:time="2019-03-06T08:06:641. Z" level=info msg="Výchozí most (docker0) je přiřazen s IP adresou 172.17.0.0/16. Daemon option --bip lze použít k nastavení preferMar 06 08:06:42 tec mint dockerd[5274]:time="2019-03-06T08:06:42.036964493Z" level=info msg="Nakládání kontejnerů:hotovo."Mar 06 08:06:42 tecmint dockerd[5274]:time="2019- 03-06T08:06:42.156279378Z" level=info msg="Docker daemon" commit=774a1f4 graphdriver(s)=overlay2 version=18.09.3Mar 06 08:06:42 tecmint dockerd:time="5209] -06T08:06:42.157145045Z" level=info msg="Daemon dokončil inicializaci"Mar 06 08:06:42 tecmint systemd[1]:Spuštěn Docker Application Container Engine.Mar 06 08:06:42 tecmint dockerd[52 :time="2019-03-06T08:06:42.224229999Z" level=info msg="API poslouchat na /var/run/docker.sock"
5. Nakonec ověřte, že Docker CE je správně nainstalován spuštěním hello-world
obrázek.
$ sudo docker spustit hello-worldOvěřte instalaci Docker CE
Dobrý den od Dockeru! Tato zpráva ukazuje, že vaše instalace zřejmě funguje správně. K vygenerování této zprávy Docker provedl následující kroky:1. Klient Docker kontaktoval démona Docker. 2. Démon Docker stáhl obrázek „hello-world“ z centra Docker. (amd64) 3. Démon Docker vytvořil z tohoto obrazu nový kontejner, který spouští spustitelný soubor, který vytváří výstup, který právě čtete. 4. Démon Docker streamoval tento výstup do klienta Docker, který jej odeslal na váš terminál. Chcete-li zkusit něco ambicióznějšího, můžete spustit kontejner Ubuntu s:$ docker run -it ubuntu bashShare obrázky, automatizovat pracovní postupy a další pomocí bezplatné Docker ID:https://hub.docker.com/Další příklady a nápady najdete na:https://docs.docker.com/get-started/
Naučte se základní příkazy Dockeru v Ubuntu
6. Chcete-li získat informace o Dockeru , spusťte následující příkaz.
Informace o $ sudo docker Verze jádra:5.0.0-050000-genericOperační systém:Ubuntu 18.04.1 LTSOSTtyp:linuxArchitecture:x86_64CPUs:1Celková paměť:1.452GiBName:tecmintID:FWSB:7MYPRIS66:DYHL:2MYPRISYY:DYHL TO6Y:GNB7Docker Root Dir:/var/lib/dockerDebug Mode (klient):falseDebug Mode (server):falseRegistry:https://index.docker.io/v1/Labels:Experimental:falseInsecure Registries:127.0.0.0/8Live Restore Povoleno:falseProduct License:Community Engine
7. Chcete-li získat informace o Dockeru verze, spusťte následující příkaz.
verze $ sudo docker Klient:Verze:18.09.3 Verze API:1.39 Přejít verze:go1.10.8 Git commit:774a1f4 Sestaveno:Čt 28. února 06:53:11 2019 OS/Arch:linux/amd64 Experimentální:falseServer:Docker Engine - Community Engine:Verze :18.09.3 Verze API:1.39 (minimální verze 1.12) Přejít verze:go1.10.8 Git commit:774a1f4 Sestaveno:Čt 28. února 05:59:55 2019 OS/Arch:linux/amd64 Experimentální:false
8. Chcete-li získat seznam všech dostupných příkazů Dockeru, spusťte docker
na vašem terminálu.
$ docker Použití:docker [MOŽNOSTI] COMMANDA soběstačný běh pro kontejneryMožnosti:--config string Umístění klientských konfiguračních souborů (výchozí "/home/tecmint/.docker") -D, --debug Povolit režim ladění -H, --host vypsat soket(y) démona pro připojení k -l, --log-level string Nastavte úroveň protokolování ("debug"|"info"|"warn"|"error"|"fatal") (výchozí "info") - -tls Použít TLS; implikováno --tlsverify --tlscacert string Certifikáty důvěry podepsané pouze touto CA (výchozí "/home/tecmint/.docker/ca.pem") --tlscert string Cesta k souboru certifikátu TLS (výchozí "/home/tecmint/. docker/cert.pem") --tlskey string Cesta k souboru klíče TLS (výchozí "/home/tecmint/.docker/key.pem") --tlsverify Použít TLS a ověřit vzdálené -v, --version Tisk informací o verzi and quitManagement Příkazy:builder Spravovat konfiguraci sestavení Spravovat kontejner konfigurací Docker Spravovat modul kontejnerů Spravovat obraz modulu dockeru Spravovat síť obrázků Spravovat síťový uzel Spravovat zásuvný modul Swarm nodes Spravovat tajné pluginy Spravovat tajnou službu Docker Spravovat zásobníky služeb Docker Swarm Spravovat systém Swarm Spravovat důvěryhodnost Docker Správa důvěryhodnosti svazku obrázků Docker Správa svazků....
Stáhněte si obrázek Dockeru v Ubuntu
9. Chcete-li spustit kontejner Docker, musíte si nejprve stáhnout obrázek z centra Docker – poskytuje bezplatné obrázky ze svých úložišť.
Chcete-li například stáhnout obrázek Docker s názvem CentOS 7
, zadejte následující příkaz.
hledání $ sudo docker centos NÁZEV POPIS STARS OFFICIAL AUTOMATEDcentos Oficiální sestavení CentOS. 5227 [OK] ansible/centos7-ansible Ansible na Centos7 120 [OK]jdeathe/centos-ssh CentOS-6 6.10 x86_64 / CentOS-7 7.5.1804 x86… 107 [OK]consol/centos-xfce-vnc kontejneru Centos headless" relace VNC… 81 [OK]imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 50 [OK]centos/mysql-57-centos7 MySQL 5.7 SQL databázový server 47 tutum/centos Jednoduchý docker CentOS s přístupem SSH 43 gluster /gluster-centos Oficiální obrázek GlusterFS [ CentOS-7 + Glust… 40 [OK]openshift/base-centos7 Základní obrázek odvozený od Centos7 pro Source-To-I … 39 centos/postgresql-96-centos7 PostgreSQL je pokročilá objektově relační … 37 centos/python-35-centos7 platforma pro vytváření a spouštění Pythonu 3.5… 33 kinogmt/centos-ssh CentOS s SSH 26 [OK]openshift/jenkins- 2-centos7 Obraz Jenkins v2.x založený na Centos7 pro použití s… 20 centos/php-56-centos7 Platforma pro vytváření a provoz PHP 5.6 ap… 19 pivotaldata/centos-gpdb-dev Obraz CentOS pro vývoj GPDB. Názvy značek… 10 openshift/wildfly-101-centos7 Obrázek WildFly v10.1 založený na Centos7 k použití … 6 openshift/jenkins-1-centos7 ZAJIŠTĚNO:Jenkins založený na Centos7 v1.x ima… 4 darksheer/centos Základní Obrázek Centos -- Aktualizováno každou hodinu 3 [OK]pivotaldata/centos Základní centos, trochu vylepšeno pomocí Do… 2 pivotaldata/centos-mingw Použití mingw toolchain ke křížové kompilaci t… 2 pivotaldata/centos-gcc-toolchain CentOS s toolchain, ale unaffiliated s… 1 openshift/wildfly-81-centos7 Obrázek WildFly v8.1 založený na Centos7 pro použití s… 1 blacklabelops/centos základní obrázek CentOS! Vytvářeno a denně aktualizováno! 1 [OK]smartentry/centos centos se smartentry 0 [OK]jameseckersall/sonarr-centos Sonarr na CentOS 7 0 [OK]
10. Poté, co určíte, jaký obrázek chcete spustit na základě vašich požadavků, stáhněte si jej lokálně spuštěním níže uvedeného příkazu (v tomto případě CentOS obrázek se stáhne a použije).
$ docker pull centos Použití výchozí značky:lastlatest:Stahování z knihovny/centosa02a4930cb5d:Vytahování dokončeno Digest:sha256:184e5f35598e333bfa7de10d8fb1cebb5ee4df5bc0f970bf2b1e7c72>Stahov newyork:test pro test11. Chcete-li zobrazit seznam všech dostupných obrazů Docker na vašem hostiteli, spusťte následující příkaz.
$ sudo docker obrázky REPOSITORY TAG ID IMAGE CREATED SIZEhello-world nejnovější fce289e99eb9 před 2 měsíci 1,84 kBcentos nejnovější 1e1148e4cc2c před 3 měsíci 202 MB12. Pokud nechcete Docker image a můžete jej odstranit pomocí následujícího příkazu.
$ sudo docker rmi centos Untagged:centos:latestUntagged:[email protected]:184e5f35598e333bfa7de10d8fb1cebb5ee4df5bc0f970bf2b1e7c7345136426Deleted:sha256:1e1148e4cc2c148c6890a18e3b2d2dde41a6745ceb4e5fe94a923d811bf82ddbDeleted:sha256:071d8bd765171080d01682844524be57ac9883e53079b6ac66707e192ea25956Spusťte kontejner Docker v Ubuntu
13. Chcete-li vytvořit a spustit kontejner Docker, musíte nejprve spustit příkaz do staženého
CentOS
image, takže základním příkazem by bylo zkontrolovat soubor distribuční verze uvnitř kontejneru pomocí příkazu cat, jak je znázorněno.$ docker spustí centos cat /etc/issue14. Chcete-li kontejnery znovu spustit, musíte nejprve získat ID nebo název kontejneru spuštěním následujícího příkazu, který zobrazí seznam spuštěných a zastavených kontejnerů:
$ sudo docker ps -l ID KONTEJNERU OBRÁZKOVÝ PŘÍKAZ VYTVOŘEN STAV NÁZVY PORTŮ0ddfa81c5779 centos "cat /etc/issue" Asi před minutou Ukončeno (0) Asi před minutou elastic_shirley15. Jakmile bude ID nebo název kontejneru byl získán, můžete kontejner spustit pomocí následujícího příkazu:
$ sudo docker start 0ddfa81c5779 NEBO$ sudo docker spustit elastic_shirleyZde je řetězec
0ddfa81c5779
představuje ID kontejneru aelastic_shirley
představuje název kontejneru.16. Chcete-li zastavit běžící kontejner, spusťte
docker stop
zadáním ID nebo názvu kontejneru .$ sudo docker stop 0ddfa81c5779 NEBO$ zarážka sudo docker elastic_shirley17. Lepším způsobem, abyste si nemuseli pamatovat ID kontejneru, by bylo definovat jedinečný název pro každý vytvořený kontejner pomocí
--name
možnost, jak je znázorněno.$ docker spustit --name myname centos cat /etc/issue18. Chcete-li se připojit a spustit příkazy Linuxu do kontejneru, zadejte následující příkaz.
$ docker spustit -it centos bash [[email protected] /]# uname -aLinux 6213ec547863 5.0.0-050000-generic #201903032031 SMP Po 4. březen 01:33:18 UTC 2019 x86_64 x86_Linux [kat.č. x86_Linux x86_6unx] etc/redhat-release CentOS Linux release 7.6.1810 (Core)19. Chcete-li ukončit a vrátit se k hostiteli ze spuštěné relace kontejneru, musíte zadat
exit
příkaz, jak je znázorněno.$ exitTo je vše pro základní manipulaci s kontejnerem. Máte-li jakékoli dotazy nebo komentáře k tomuto článku, kontaktujte nás pomocí níže uvedeného formuláře pro zpětnou vazbu.
Spustit Docker Container na pozadí (oddělený režim) Jak pojmenovat nebo přejmenovat kontejnery DockerDocker