Hogyan telepítsük a WordPress-t Docker konténerekbe
Ismerje meg, hogyan futtathatja a WordPress telepítést Docker konténerekben, mind manuálisan, mind a Docker Compose segítségével. A WordPress fejlesztőknek hasznos lehet a WordPress futtatása Docker konténerekben. A Docker segítségével könnyen tesztelhet több WordPress konfigurációt, és néhány egyszerű paranccsal elindíthat egy új WordPress telepítést.
Követelmények
Ahhoz, hogy a WordPress zökkenőmentesen futhasson a Docker konténerekben, egy aktuális és támogatott Linux disztribúcióra van szükség. A régebbi verziók, mint például a CentOS 7 vagy az Ubuntu 14.04, elavultak, és modern alternatívákkal kell őket felváltani. Ajánlott opciók:
- Ubuntu 22.04 LTS vagy újabb
- Debian 12 vagy újabb
- A Red Hat Enterprise Linux (RHEL) vagy AlmaLinux aktuális verziója
A Dockernek is telepítve és használatra készen kell lennie. A legújabb biztonsági és teljesítményjavítások kihasználásához a minimális követelmény a Docker 20.10 vagy újabb verzió. Ha a Docker Compose-t szeretné használni, győződjön meg arról, hogy legalább a 2.x verziót használja, mivel a régebbi verziókat már nem tartják karban.
Alapvető parancssori ismeretek és a Docker Compose és Docker ismerete hasznos lehet. Ha nagyobb vagy skálázható beállítást tervez, érdemes megismerkedni a Kubernetes professzionális szintű konténer-koordinációs rendszerével.
Hogyan futtassuk a WordPress-t Docker konténerekben
A sikeres WordPress telepítés három elemből áll:
- A WordPress szoftver
- MySQL vagy MariaDB adatbázis
- A végső telepítési lépések böngészőben
Az alábbi példákban a WordPress és a MySQL/MariaDB különálló, összekapcsolt konténerekben fog futni. A WordPress szoftvert futtató konténer a gazdagépen egy porthoz lesz hozzárendelve, így böngészőn keresztül érhető el.
MySQL/MariaDB konténer futtatása
A Docker elindítása után az első lépés az adatbázis beállítása. Kezdje a my-db nevű konténer futtatásával. Használhatja a MySQL-t vagy a MariaDB-t, amely a MySQL közvetlen helyettesítője.
MySQL
Indítson el egy konténert a következő paranccsal:
sudo docker run --name my-db -e MYSQL_ROOT_PASSWORD=SECURE_PASSWORD -d mysql:latestMariaDB
Indítsa el a konténert a következő paranccsal:
sudo docker run --name my-db -e MYSQL_ROOT_PASSWORD=SECURE_PASSWORD -d mariadb:latestAdatbázis létrehozása
A konténer létrehozása után létre kell hoznia egy adatbázist a WordPress telepítéséhez.
MySQL
Csatlakozzon az újonnan létrehozott adatbázis-tárolóhoz a következő paranccsal:
docker exec -it my-db mysql -u root -pAdatbázis létrehozása:
CREATE Database wordpress-db;MariaDB
Csatlakozzon az újonnan létrehozott adatbázis-tárolóhoz a következő paranccsal:
docker exec -it my-db mariadb -u root -pAdatbázis létrehozása:
CREATE Database wordpress-db;WordPress konténer futtatása
Ezután futtasson egy konténert a hivatalos WordPress-képpel. Ez a 8080-as portra lesz leképezve, és az adatbázis-konténerhez lesz kapcsolva.
Két megjegyzés:
- Ha tűzfalat használ, akkor engedélyeznie kell a 8080-as porthoz való hozzáférést.
- Ha a 8080-as porton már fut egy másik szolgáltatás, akkor választhat egy másik portot a gazdagépen.
A parancs kissé eltér attól függően, hogy MySQL-t vagy MariaDB-t használsz:
MySQL
Indítsa el a WordPress konténert a következő paranccsal:
sudo docker run --name my-wordpress -p 8080:80 --link my-db:mysql -d wordpress:latestMariaDB
Indítsa el a WordPress konténert a következő paranccsal:
sudo docker run --name my-wordpress -p 8080:80 --link my-db:mariadb -d wordpress:latestHa felül akarja írni az alapértelmezett beállításokat, számos más környezeti változót is hozzáadhat ehhez a parancshoz, többek között:
-e WORDPRESS_DB_HOST=[hostname]: Az alapértelmezett érték a kapcsolt MySQL/MariaDB konténer IP-címe és portja. Ez a változó lehetővé teszi, hogy csatlakozzon egy másik szerveren található MySQL/MariaDB adatbázishoz.-e WORDPRESS_DB_USER=[username]: Az alapértelmezett értékroot.-e WORDPRESS_DB_PASSWORD=[password]: Az alapértelmezett érték a kapcsolt MySQL/MariaDB konténerMYSQL_ROOT_PASSWORDkörnyezeti változója.-e WORDPRESS_DB_NAME=[name]: Az alapértelmezett érték"wordpress".
A biztonság javítása érdekében célszerű lehet, ha a konténereket nem az alapértelmezett hídhálózaton futtatja. Ehelyett létrehozhat egy egyéni hálózatot:
docker network create my-wp-network
docker run --name my-db --network my-wp-network -e MYSQL_ROOT_PASSWORD=SECURE_PASSWORD -d mysql:latest
docker run --name my-wordpress --network my-wp-network -p 8080:80 -d wordpress:latestItt a konténerek jobban el vannak szigetelve a többitől, ami csökkenti a nem kívánt kapcsolatok kockázatát. A hálózati szabályokat is részletesebben konfigurálhatja, például egyéni tűzfalbeállítások használatával vagy fordított proxy telepítésével.
Hogyan lehet befejezni a telepítést a böngészőben
A telepítés utolsó lépéseihez böngésző segítségével kell belépnie a WordPress konténerbe.
A fenti példában a gazdagépen lévő 8080-as portot a konténer 80-as portjához (webszolgáltatások) rendeltük hozzá. Ez azt jelenti, hogy mostantól a böngészőn keresztül a szerver IP-címén vagy domainnevével is elérheti a konténert:
http://<server-ip>:8080http://example.com:8080
Látogasson el a böngészőjében az URL-re, válassza ki a telepítés nyelvét, majd kattintson a Folytatás gombra.

A következő képernyőn megjelenik egy üzenet, amely felkészít a beállítás következő lépésére. Kattintson a „Let’s go!” (Indulhatunk!) gombra a folytatáshoz.

Most adja meg az adatbázis adatait, hogy létrehozható legyen a wp-config.php fájl:

Ne feledje, hogy az alapértelmezett felhasználó „root”, hacsak másképp nem jelezte. Írja be a létrehozott adatbázis nevét és a választott jelszót. A „Submit” (Küldés) gombra kattintva a telepítés következő lépéseihez jut.

- Webhely címe: Írja be webhelye címét.
- Felhasználónév: Ez a webhelyének elsődleges rendszergazdai felhasználóneve. Tipp: Biztonsági okokból javasoljuk, hogy ne használja az „Admin” szót vagy a domain nevét/URL-jét.
- Jelszó: Mielőtt továbbhaladna, írja le ezt a jelszót.
- E-mail címe: Ez az adminisztrátori fiókhoz tartozó e-mail cím.
Ezután kattintson a WordPress telepítése gombra a telepítés befejezéséhez.

A telepítés befejezése után megjelenik egy megerősítő üzenet, majd bejelentkezhet a WordPressbe.
Hogyan futtassuk a WordPress-t a Docker Compose segítségével
A Docker Compose használata egy másik módja a WordPress futtatásának. A telepítési és használati utasításokat a Swarm és Compose segítségével történő Docker-koordinációról szóló cikkünkben találja meg. Lényegében ez az eszköz lehetővé teszi, hogy az összes szükséges szolgáltatást egyetlen fájlban határozza meg, és azokat egyszerre indítsa el.
A YAML fájl létrehozása
Először hozzon létre egy könyvtárat a projektjéhez, majd lépjen be abba:
sudo mkdir wordpress
cd wordpressHozzon létre egy docker-compose.yml nevű YAML fájlt a következő paranccsal:
sudo nano docker-compose.ymlA fájl tartalma kissé eltér attól függően, hogy MySQL-t vagy MariaDB-t használ:
MySQL
Adja hozzá a következő tartalmat a fájlhoz:
wordpress:
image: wordpress:latest
links:
- wordpress_db:mysql
ports:
- 8080:80
wordpress_db:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: SECURE_PASSWORDMentse el és lépjen ki a fájlból.
MariaDB
Adja hozzá a következő tartalmat a fájlhoz:
wordpress:
image: wordpress:latest
links:
- wordpress_db:mariadb
ports:
- 8080:80
wordpress_db:
image: mariadb
environment:
MYSQL_ROOT_PASSWORD: SECURE_PASSWORDMentse el és lépjen ki a fájlból.
A konténerek elindítása
Ezután a Docker Compose segítségével indítsa el a konténereket a következő paranccsal:
sudo docker-compose up -dA következő paranccsal ellenőrizheti, hogy a konténerek létrehozásra kerültek-e:
sudo docker-compose psA telepítés befejezéséhez nyissa meg a WordPress konténert egy böngészőben. Használhatja a szerver IP-címét vagy URL-jét:
http://192.168.0.1:8080http://example.com:8080
Kubernetes skálázható WordPress-telepítésekhez
Nagyobb és termelési szintű beállításokhoz a Kubernetes (K8s) használható. A Kubernetes lehetővé teszi a WordPress konténerek több csomóponton történő összehangolását és automatikus kezelését. A Kubernetes klaszter használata számos előnnyel jár, például automatikus méretezés, önjavító mechanizmusok és központosított erőforrás-kezelés. Ennek egyik megvalósítási módja a Helm, a Kubernetes csomagkezelője:
helm repo add bitnami https://charts.bitnami.com/bitnami
helm install my-wordpress bitnami/wordpress --set service.type=LoadBalancerEz lehetővé teszi a magas rendelkezésre állású, skálázható WordPress telepítést terheléselosztással, automatikus frissítésekkel és failover támogatással.