Giunsa ang Pag-install sa Apache sa usa ka Docker Container sa Linux


Kung ikaw usa ka tigdumala sa sistema sa Linux nga naghatag suporta alang sa mga developer, lagmit nakadungog ka bahin sa Docker. Kung dili, kini nga solusyon sa software makapasayon sa imong kinabuhi sugod karon pinaagi sa pagtabang kanimo nga makunhuran ang mga gasto sa pag-operate ug mapadali ang pag-deploy - taliwala sa ubang mga benepisyo.

Apan dili kini salamangka. Ang Docker isip usa ka plataporma naggamit sa mga sudlanan - mga pakete sa usa ka aplikasyon uban sa tanan nga mga himan nga gikinahanglan niini sa pagdagan aron mawagtang ang mga kalainan tali sa mga palibot.

Sa laing pagkasulti, ang containerized nga software molihok ug mahimong madumala sa makanunayon bisan asa kini na-install. Dugang pa, ang mga sudlanan labi ka dali nga i-set up, pagsugod, paghunong, ug pagmentinar kaysa maayo nga mga daan nga virtual machine.

Kung interesado ka nga mahibal-an ang dugang bahin sa mga kalainan tali niining duha nga mga teknolohiya, ang opisyal nga website sa Docker naghatag usa ka maayo nga katin-awan.

Sa pag-ilustrar, sa kini nga artikulo among ipasabut kung giunsa ang pag-install sa Docker sa CentOS/RHEL, Rocky/Alma Linux, ug Debian/Ubuntu, ug i-spin up ang usa ka Apache 2.4 nga sudlanan gikan sa Docker Hub.

Among gamiton kini sa pag-alagad sa usa ka yano nga web page gikan sa among home directory – tanan nga walay panginahanglan nga mag-instalar og web server sa among host.

Pag-instalar sa Docker sa Linux

Sa pagsugod, atong i-install ang Docker gamit ang mosunod nga curl command. Kini mag-download ug magpadagan og shell script nga magdugang sa Docker repository sa among sistema ug i-install ang package.

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

Sunod, gamita ang systemctl nga sugo aron masugdan ang nag-unang serbisyo sa Docker, himoa kini nga magsugod sa panahon sa pag-reboot, ug susihon ang kahimtang niini.

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

Niini nga punto, mahimo ra naton ipatuman.

# docker

aron tan-awon ang lista sa magamit nga mga sugo o aron makakuha og tabang.

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

isulti kanamo kung giunsa paglista ang mga sulud nga naa sa among sistema, samtang

# docker run --help

i-print ang tanan nga mga kapilian nga magamit namon sa pagmaniobra sa usa ka sudlanan.

Pagbutang ug Apache Container

Usa sa mga katingad-an nga butang bahin sa ekosistema sa Docker mao nga adunay napulo ka mga sumbanan nga sulud nga dali nimo ma-download ug magamit.

Sa mosunod nga pananglitan, atong i-instantiate ang usa ka Apache 2.4 nga sudlanan nga ginganlag tecmint-web, nga nahimulag gikan sa kasamtangan nga terminal. Maggamit kami og usa ka hulagway nga gitawag og httpd:2.4 gikan sa Docker Hub.

Ang among plano mao nga ang mga hangyo nga gihimo sa among publikong IP address sa port 8080 ma-redirect sa port 80 sa sudlanan. Usab, imbes nga mag-alagad sa sulod gikan sa sudlanan mismo, mag-alagad kami og yano nga web page gikan sa /home/user/website.

Gihimo namo kini pinaagi sa pagmapa /home/user/website/ sa /usr/local/apache2/htdocs/ sa sudlanan. Timan-i nga kinahanglan nimo nga gamiton ang sudo o pag-login ingon gamut aron magpadayon, ug ayaw ibaliwala ang mga slash sa unahan sa katapusan sa matag direktoryo.

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

Niini nga punto, ang among Apache nga sudlanan kinahanglan nga nagdagan.

$ sudo docker ps

Karon maghimo kita ug yano nga web page nga ginganlag docker.html sulod sa /home/user/website directory.

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

Idugang ang mosunod nga sample HTML content sa file.

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

Sunod, itudlo ang imong browser sa Server-IP:8080/docker.html (diin ang Server-IP mao ang public IP address sa imong host). Kinahanglan nga ipresentar ka sa panid nga among gibuhat kaniadto.

Kung gusto nimo, mahimo nimong ihunong ang sudlanan.

$ sudo docker stop tecmint-web

ug kuhaa kini:

$ sudo docker rm tecmint-web

Aron mahuman ang pagpanglimpyo, mahimo nimong tangtangon ang imahe nga gigamit sa sulud (ilaktawan kini nga lakang kung nagplano ka nga maghimo ug uban pang mga sulud sa Apache 2.4 sa dili madugay).

$ sudo docker image remove httpd:2.4

Timan-i nga sa tanan nga mga lakang sa ibabaw wala kami kinahanglan nga i-install ang webserver sa among host.

Niini nga artikulo, gipasabut namon kung giunsa ang pag-install sa Docker ug pagmaniobra sa usa ka sudlanan. Ikasubo, kini ra ang mga sukaranan - adunay tibuuk nga mga kurso, libro, ug mga eksaminasyon sa sertipikasyon nga nagsakup sa mga Docker (ug mga sulud sa kinatibuk-an) nga mas lawom.

Kung gusto nimo mahibal-an ang dugang bahin sa Docker, nasakup na namon ang usa ka serye sa 3-artikulo, nga nagpatin-aw kung giunsa ang pag-install sa Docker, pagpadagan sa mga aplikasyon sa mga sulud, ug awtomatiko nga maghimo mga imahe sa docker nga adunay dockerfile.

  • I-install ang Docker ug Pagkat-on sa Basic Container Manipulation sa CentOS ug RHEL
  • Unsaon Pag-deploy ug Pagpadagan sa mga Aplikasyon sa mga Docker Container sa CentOS/RHEL
  • Awtomatikong Paghimo ug I-configure ang mga Imahe sa Docker gamit ang Dockerfile sa CentOS/RHEL
  • Unsaon Pagtangtang sa mga Imahen sa Docker, Mga Kontainer, ug Mga Volume

Hunahunaa kini nga imong pagsugod ug ipahibalo kanamo kung naa kay mga pangutana o komento - nagpaabut kami nga makadungog gikan kanimo!