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:latest

MariaDB

Indítsa el a konténert a következő paranccsal:

sudo docker run --name my-db -e MYSQL_ROOT_PASSWORD=SECURE_PASSWORD -d mariadb:latest

Adatbá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 -p

Adatbá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 -p

Adatbá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:latest

MariaDB

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:latest

Ha 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ék root.
  • -e WORDPRESS_DB_PASSWORD=[password]: Az alapértelmezett érték a kapcsolt MySQL/MariaDB konténer MYSQL_ROOT_PASSWORD kö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:latest

Itt 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>:8080
  • http://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.

Kép: Screenshot showing the WordPress language selection
You can now select your installation language in the browser.

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.

Kép: Screenshot of the WordPress installation prompt
The WordPress installation prompt informs you about the next setup step.

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

Kép: Screenshot of the WordPress database connection
Enter the requested information for your database.

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.

Kép: Screenshot of the WordPress installation: site info
Enter the requested information about your WordPress site.
  • 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.

Kép: Screenshot of the successful WordPress installation
The success message shows the installation was successful.

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 wordpress

Hozzon létre egy docker-compose.yml nevű YAML fájlt a következő paranccsal:

sudo nano docker-compose.yml

A 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_PASSWORD

Mentse 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_PASSWORD

Mentse 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 -d

A következő paranccsal ellenőrizheti, hogy a konténerek létrehozásra kerültek-e:

sudo docker-compose ps

A 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:8080
  • http://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=LoadBalancer

Ez 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.

Ugrás a főmenübe