V tomto tutoriálu nainstalujeme WordPress pomocí více kontejnerů dockeru. Samotný Wordpress v jednom kontejneru a databáze MariaDB v jiném kontejneru. Poté nainstalujeme Nginx na hostitelský počítač jako reverzní proxy pro kontejner WordPress.
Docker je projekt s otevřeným zdrojovým kódem, který vývojářům a správcům systému usnadňuje vytváření, nasazování a spouštění distribuovaných aplikací v kontejneru dockeru. Docker je virtualizace na úrovni operačního systému, pomocí dockeru můžete pro aplikaci vytvořit systémovou izolaci pro aplikaci, která běží uvnitř kontejneru. Uvnitř serveru můžete vytvořit stovky kontejnerů docker, počet závisí na hardwaru vašeho počítače.
Předpoklad
- Ubuntu 15.04 – x86_64
- Oprávnění uživatele root
- Znalost dockerů
Krok 1 – Instalace Dockeru
V tomto kroku aktualizujeme úložiště Ubuntu a poté nainstalujeme nejnovější verzi docker.io.
Pro další kroky se staňte uživatelem root:
sudo -s
Aktualizujte úložiště Ubuntu:
aktualizace apt-get
Nyní nainstalujte balíčky Docker pomocí příkazu apt níže:
apt-get install docker.io
Po dokončení instalace spusťte docker a přidejte jej ke spuštění při spouštění systému pomocí příkazu systemctl:
systemctl start docker
systemctl enable docker
Dále zkontrolujte verzi Dockeru pomocí tohoto příkazu docker:
verze dockeru
docker běží hello-world
Instalace dockeru je dokončena.
Krok 2 – Nastavení kontejneru MariaDB
V tomto kroku stáhneme nové obrázky MariaDB z registru dockerů a vytvoříme nový kontejner založený na tomto obrázku. Nakonfigurujeme novou databázi a uživatele pro instalaci WordPressu.
Stáhněte si obraz Docker MariaDB do systému pomocí příkazu Docker pull:
docker pull mariadb
Nyní můžete vidět nový obrázek dockeru MariaDB pomocí příkazu níže:
obrázky dockeru
Dále vytvořte nový kontejner z obrazu MariaDB pro instalaci WordPress. Před vytvořením nového kontejneru vytvořte nový adresář pro data WordPress, adresář databáze a adresář kódu WordPress.
mkdir ~/wordpress
mkdir -p ~/wordpress/database
mkdir -p ~/wordpress/html
Nyní vytvořte nový kontejner MariaDB s názvem 'wordpressdb' pomocí příkazu níže:
docker run -e MYSQL_ROOT_PASSWORD=aqwe123 -e MYSQL_USER=wpuser -e [e-mail chráněný] -e MYSQL_DATABASE=wordpress_db -v /root/wordpress/database:/var/lib/mysql --name wordpressdb -d mariadbPokud nedojde k žádné chybě, můžete vidět výsledky níže:
Vysvětlení parametru:
- MYSQL_ROOT_PASSWORD =nakonfigurujte heslo pro uživatele root MySQL.
- MYSQL_USER =vytvořit nového uživatele MySQL 'wpuser' pro databázi WordPress.
- MYSQL_PASSWORD =nastavte heslo „[email protected]“ pro uživatele „wpuser“.
- MYSQL_DATABASE =vytvořit novou databázi pro instalaci wordpress s názvem 'wordpress_db'.
- -v /root/wordpress/database:/varlib/mysql =propojený adresář databáze s adresářem mysql '/var/lib/mysql' v kontejneru, aby byla zajištěna trvalost dat.
Kontejner MariaDBriadb byl vytvořen, nyní zkontrolujte nového uživatele a databázi pro instalaci WordPress, abyste se ujistili, že s příkazem nahoře není žádná chyba.
Z hostitelského počítače zkontrolujte IP adresu kontejneru wordpressdb pomocí příkazu docker níže:
docker inspect -f '{{ .NetworkSettings.IPAddress }}' wordpressdb
Dále se připojte ke kontejneru wordpressdb pomocí příkazu mysql z hostitelského systému:
mysql -u wpuser -h 172.17.0.2 -p
TYP HESLA:[chráněno e-mailem]
Zkontrolujte novou databázi 'wordpress_db':
zobrazit databáze;
Všechny výsledky:
Nový kontejner Docker, uživatel MySQL a databáze MySQL pro WordPress byly úspěšně vytvořeny.
Krok 3 – Nastavení kontejneru Wordpress
Po vytvoření databázového kontejneru stáhněte nejnovější obrázek dockeru WordPress pomocí příkazu docker pull:
docker pull wordpress:latest
Po dokončení stahování vytvořte z obrázků nový kontejner s názvem 'wpcontainer'.
docker run -e WORDPRESS_DB_USER=wpuser -e [e-mail chráněný] -e WORDPRESS_DB_NAME=wordpress_db -p 8081:80 -v /root/wordpress/html:/var/www/html --link wordpressdb:mysql --name wpcontainer -d wordpress
Můžete získat výsledek, jak je uvedeno níže, nebo můžete zkontrolovat, že byl vytvořen nový kontejner s názvem 'wpcontainer'.
Parametry:
- WORDPRESS_DB_USER =definovat uživatele databáze 'wpuser' pro wordpress db.
- WORDPRESS_DB_PASSWORD =heslo '[email protected]' pro uživatele databáze 'wpuser'.
- WORDPRESS_DB_NAME =název databáze 'wordpress_db' vytvořené v kroku 2.
- -p 8081:80 =mapování portu 80 na kontejneru na port 8081 na hostiteli.
- -v /root/wordpress/html:/var/www/html =Propojení webového kořenového adresáře '/var/www/html' na kontejneru s místním hostitelským adresářem 'wordpress/html'.
- --link wordpressdb:mysql =propojení mariadb kontejneru 'wordpressdb' s novým container wordpress 'wpcontainer'.
Chcete-li vidět spuštěný kontejner WordPress, můžete jej zkontrolovat pomocí příkazu curl na hostitelské IP a portu 8081.
curl -I 192.168.43.99:8081
Uvidíte výsledky:
- Webový server je Apache běžící na Debianu.
- V kontejneru běží PHP 5.6.
- Uvidíte přesměrování na instalaci WordPresss.
Krok 4 – Instalace a konfigurace Nginx jako reverzního proxy
V tomto kroku nainstalujeme webový server Nginx na hostitelský systém. Nginx nakonfigurujeme jako reverzní proxy pro kontejner Docker „wpcontainer“ na portu 8081.
Nainstalujte Nginx pomocí příkazu apt na hostitelský systém:
apt-get install nginx
Dále přejděte do adresáře Nginx a vytvořte novou konfiguraci virtuálního hostitele pro kontejner WordPress.
cd /etc/nginx/sites-available/
vim wordpress
Níže vložte konfiguraci virtuálního hostitele:
server {
listen 80;
název_serveru wordpress-docker.co www.wordpress-docker.co;
umístění / {
proxy_pass http:// localhost:8081;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
/před>Uložte soubor a ukončete.
Nyní aktivujte nového virtuálního hostitele WordPress a odstraňte výchozí konfiguraci virtuálního hostitele.
ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-available/default
rm -f / etc/nginx/sites-enabled/defaultRestartujte webový server Nginx:
systemctl restart nginx
Krok 5 – Instalace WordPress
Otevřete svůj webový prohlížeč a navštivte název domény v konfiguraci nginx „www.wordpress-docker.co“ a budete přesměrováni na instalaci WordPress.
Zadejte název webu, uživatelské jméno správce a heslo a poté klikněte na Instalovat WordPress.
Nyní klikněte na 'Přihlásit se do Wordpressu' a vyplňte uživatelské jméno a heslo, které jste si zvolili výše, zobrazí se vám ovládací panel WordPress.
Nebo se můžete podívat na domovskou stránku WordPress níže:
Instalace WordPress s kontejnerem MariaDB a kontejnerem WordPress byla úspěšná.
Ubuntu