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

Jak nastavit jednoduchý webový server Apache v kontejneru Docker

Pokud jste správce systému Linux a poskytujete podporu vývojářům, je pravděpodobné, že jste již slyšeli o Docker . Pokud ne, toto softwarové řešení vám dnes usnadní život tím, že vám pomůže snížit provozní náklady a urychlit nasazení – kromě jiných výhod.

Ale není to kouzlo. Docker jako platforma využívá kontejnery – balíčky aplikací spolu se všemi nástroji, které potřebuje ke spuštění k odstranění rozdílů mezi prostředími.

Jinými slovy, kontejnerový software bude fungovat a může být spravován konzistentně bez ohledu na to, kde je nainstalován. Kontejnery se navíc mnohem snadněji nastavují, spouštějí, zastavují a udržují než staré dobré virtuální stroje.

Pokud se chcete dozvědět více o rozdílech mezi těmito dvěma technologiemi, oficiální web Docker poskytuje skvělé vysvětlení.

Pro ilustraci si v tomto článku vysvětlíme, jak nainstalovat Docker na CentOS/RHEL , Rocky/Alma Linux a Debian/Ubuntu a roztočte Apache 2.4 kontejner z Docker Hub .

Poté jej použijeme k poskytování jednoduché webové stránky z našeho domovského adresáře – to vše bez nutnosti instalace webového serveru na náš hostitel.

Instalace Dockeru v systému Linux

Nejprve si nainstalujme Docker pomocí následujícího příkazu curl. Tím se stáhne a spustí skript shellu, který přidá úložiště Docker do našeho systému a nainstaluje balíček.

# curl -fsSL https://get.docker.com | sh

Poté pomocí příkazu systemctl spusťte hlavní Docker službu, povolte její spuštění během restartování a zkontrolujte její stav.

# systemctl start docker
# systemctl enable docker
# systemctl status docker

V tomto okamžiku můžeme jednoduše provést.

# docker

pro zobrazení seznamu dostupných příkazů nebo získání nápovědy.

# docker COMMAND --help
# docker ps --help

nám řekne, jak vytvořit seznam kontejnerů přítomných v našem systému, zatímco

# docker run --help

vypíše všechny možnosti, které můžeme použít k manipulaci s kontejnerem.

Nastavení kontejneru Apache

Jedna z úžasných věcí na Dockeru ekosystém spočívá v tom, že existují desítky standardních kontejnerů, které si můžete snadno stáhnout a používat.

V následujícím příkladu vytvoříme instanci Apache 2.4 kontejner s názvem tecmint-web , odpojený od aktuálního terminálu. Použijeme obrázek s názvem httpd:2.4 z Docker Hub .

Naším plánem je zasílání požadavků na naši veřejnou IP adresu na portu 8080 být přesměrován na port 80 na nádobě. Namísto poskytování obsahu ze samotného kontejneru také budeme zobrazovat jednoduchou webovou stránku z /home/user/web .

Děláme to mapováním /home/user/website/ na /usr/local/apache2/htdocs/ na nádobě. Pamatujte, že budete muset použít sudo nebo se přihlaste jako root pokračovat a nevynechejte lomítka na konci každého adresáře.

# sudo docker run -dit --name tecmint-web -p 8080:80 -v /home/user/website/:/usr/local/apache2/htdocs/ httpd:2.4

V tuto chvíli náš Apache kontejner by měl být v provozu.

$ sudo docker ps

Nyní vytvoříme jednoduchou webovou stránku s názvem docker.html uvnitř /home/user/website adresář.

# vi /home/user/website/docker.html

Přidejte do souboru následující ukázkový obsah HTML.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Learn Docker at Tecmint.com</title>
</head>
<body>
    <h1>Learn Docker With Us</h1>   
</body>
</html>

Dále přejděte v prohlížeči na Server-IP:8080/docker.html (kde Server-IP je veřejná IP adresa vašeho hostitele). Měla by se vám zobrazit stránka, kterou jsme vytvořili dříve.

Pokud si přejete, můžete nyní kontejner zastavit.

$ sudo docker stop tecmint-web

a odstraňte jej:

$ sudo docker rm tecmint-web

Chcete-li dokončit čištění, možná budete chtít smazat obrázek, který byl použit v kontejneru (tento krok vynechejte, pokud plánujete vytvořit další Apache 2.4 kontejnery již brzy).

$ sudo docker image remove httpd:2.4

Všimněte si, že ve všech výše uvedených krocích jsme nikdy nemuseli instalovat webový server na náš hostitel.

Shrnutí

V tomto článku jsme vysvětlili, jak nainstalovat Docker a manipulovat s kontejnerem. Bohužel, toto jsou jen základy – existují celé kurzy, knihy a certifikační zkoušky, které pokrývají Dockers (a kontejnery obecně) více do hloubky.

Pokud se chcete dozvědět více o Dockeru , již jsme pokryli sérii 3 článků, která vysvětluje, jak nainstalovat Docker, spouštět aplikace do kontejnerů a automaticky vytvářet obrazy dockeru pomocí dockerfile.

  • Nainstalujte si Docker a naučte se základní manipulaci s kontejnery v CentOS a RHEL
  • Jak nasadit a spustit aplikace do kontejnerů Docker na CentOS/RHEL
  • Automaticky vytvářet a konfigurovat obrazy Docker pomocí Dockerfile na CentOS/RHEL
  • Jak odebrat obrázky, kontejnery a svazky Docker

Berte to jako výchozí bod a dejte nám vědět, pokud máte nějaké dotazy nebo připomínky – těšíme se na vaši odpověď!


Docker
  1. Jak nakonfigurovat webový server Apache

  2. Jak spustit MySQL v Docker Container:Jednoduchý a snadno sledovatelný průvodce

  3. Přístup k webovému serveru Apache uvnitř kontejneru LXD

  1. Jak nainstalovat webový server Apache na CentOS 7

  2. Jak nainstalovat webový server Apache na Centos 8

  3. Jak nainstalovat webový server Apache na Ubuntu

  1. Jak odstranit webový server Apache z Ubuntu

  2. Learning Docker:Jak vytvořit kontejner Docker

  3. Jak nainstalovat webový server Apache na Linux