Dockerfile: Egy szöveges „recept”, ami leírja, hogyan kell felépíteni a konténerünket (milyen alaprendszerből induljon, milyen csomagokat telepítsen, milyen fájlokat másoljon be, milyen parancsot futtasson indításkor).
Image (Kép): A Dockerfile alapján létrehozott „sablon” vagy „tervrajz”. Ez tartalmaz mindent, ami az alkalmazás futtatásához kell. Nem változik. Maga a „becsomagolt” állapot.
Container (Konténer): Az Image-ből elindított, futó példány. Ez már egy élő, futó folyamat, amivel interakcióba lehet lépni. Egy Image-ből több Container-t is indíthatunk.
Docker Hub: Egy online „könyvtár” (registry), ahol rengeteg előre elkészített Image-t találhatunk (pl. web szerverekhez, adatbázisokhoz, programozási nyelvekhez).
sudo apt install docker.io docker-compose-v2 -y
Felhasználó hozzáadása a docker csoporthoz
Így nem kell sudo a docker parancsok elé.
sudo groupadd docker sudo usermod -aG docker $USER
Jelentkezz be újra a felhasználóval.
docker pull <image-neve>
docker image ls -a
docker rmi <image neve>
docker container ls -a
docker ps
docker run --name <konténer neve> -d -p 8080:80 image-neve
ahol:
docker run: Parancs egy új konténer indítására.
–name <konténer neve>: Nevet adunk a konténernek (könnyebb hivatkozni rá).
-d (detach): A konténer a háttérben fusson, ne foglalja le a terminált.
-p 8080:80 (publish): Port átirányítás. Például a gépünk (host) 8080-as portjára érkező kéréseket irányítsa át a konténeren belül futó webszerver 80-as portjára (ez a HTTP alapértelmezett portja).
image-neve: Megadjuk, melyik image-ből induljon a konténer.)
docker stop <konténer neve>
docker rm <konténer neve>
docker container logs <konténer neve>
| Oldal | Leírás | Címkék |
|---|---|---|
| Hello World Egyszerű docker image, ami kiírja a „Hello World” üzenetet a konzolra. <https://hub.docker.com/_/hello-world> sudo su Image letöltése docker pu… | docker, tutorial | |
| HTTPD - Apache webszerver Egyszerű 🌐 Apache2 webszerver <https://hub.docker.com/_/httpd> 80 sudo su Image letöltése docker pull httpd Konténer létrehozá… | docker, tutorial, webszerver | |
| images-web-server A gép egy mappájába feltöltött képeket jeleníti meg böngészőben. <https://hub.docker.com/r/raerek/images-web-server> Ez a konténer egy webs… | docker, tutorial, webszerver | |
| Nginx demo - Hello Egyszerű 🌐 Nginx webszerver, ami kiír néhány információt a szerverről. <https://hub.docker.com/r/nginxdemos/nginx-hello>sudo su Image letö… | docker, tutorial, webszerver |
Eddig minden konténert egy hosszú docker run paranccsal indítottunk. De mi van, ha például egy weboldalhoz egyszerre kell egy webszerver, egy adatbázis és egy PHP feldolgozó is? Három külön terminálablakban futtatnánk őket? Hogyan beszélgetnek egymással?
Erre a Docker Compose a megoldás. Ez az „Infrastructure as Code” (IaC) alapja: ahelyett, hogy parancsokat gépelnénk, egy szöveges fájlban (compose.yaml) írjuk le, hogyan nézzen ki a rendszerünk.
Előnyei:
docker compose up, és ugyanaz fut nála is.További leírás: