Be dia be ny afaka atao raha hanao installation WordPress en local. Misy ny LocalWP, afaka manao installation LAMP, fa raha hanamboatra theme sy plugin tena hafa ihany ny conteneur Docker.
Matetika moa aho site efa misy foana no hanamboarana theme vaovao, na hanamboarana plugin. Noho izany, izay no scenario raisina eto, clonage site existant ao anaty conteneur docker.
Prérequis
- repertoire wp-content, ireo contenu an'ilay site web miaraka amin'ny config
- wp-content/themes
- wp-content/plugins
- wp-content/uploads
- dump ny base de donnees
docker-compose.yml
Docker compose no ampiasaiko, hampitoviana amin'ny environnement prod ny configuration.
services:
wordpress:
image: wordpress:php8.2-apache # misafidy version
ports:
- "8080:80" # http://localhost:8080. Afaka ataonao izay port mety aminao
volumes:
- ./themes:/var/www/html/wp-content/themes
- ./plugins:/var/www/html/wp-content/plugins
- ./uploads:/var/www/html/wp-content/uploads # Ireo no dossier public misy ny fanovara rehetra
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_USER: wpuser
WORDPRESS_DB_PASSWORD: wppassword
WORDPRESS_TABLE_PREFIX: wp_ # Soloina mitovy amin'ny prod
WORDPRESS_DEBUG: true
WORDPRESS_CONFIG_EXTRA: |
define( 'WP_DEBUG_LOG', false );
define( 'WP_DEBUG_DISPLAY', true );
define( 'SCRIPT_DEBUG', true );
depends_on:
- db
db:
image: mariadb:10.5 # Tsy dia maninona loatra na tsy mitovy amin'ny prod aza
environment:
MYSQL_DATABASE: wordpress
MYSQL_USER: wpuser
MYSQL_PASSWORD: wppassword
MYSQL_ROOT_PASSWORD: rootpass
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:YAMLBuild
# Build & start container
docker-compose up -dBashRehefa tapitra ny download dia tonga dia mandeha avy hatrany ilay conteneur. Ilay otpion -d mandefa ilay conteneur en arriere plan rehefa tapitra ny build.
Raha manokatra ilay url local ianao eto dia magataka installation WordPress izy satria mbola vide ilay base de données.
Import base de données
Ny tokony atao eto, alefa ao anatin'ilay conteneur db ilay dump.
# Copie-na ao amin'ilay conteneur ilay dump.
docker cp dump.sql $(docker compose ps -q db):/dump.sql
# Connection bash amin'ilay container db
docker compose exec db bashBashRehefa ao anaty shell an'ilay conteneur dia configuré-na ilay base de données.
# Creds mitovy ao amin'ilay docker-compose
mariadb -u wpuser -p wppasswordBashUSE wordpress;
SOURCE /dump.sql;SQLVita izay dia misokatra ny site. Saingy redirigé any amin'ilay site prod foana ianao satria mbola any amin'ilay domaine any ny parametre siteurl.
Ovana ireo URLS WordPress
Misy parametres 2 mila ovana ao anaty table options ao anaty base de donnees : sitehome sy siteurl. Za moa kamo manao SQL, aleoko mampiasa wp-cli.
# Miditra ao amin'ny shell an'ilay conteneur wordpress
docker compose exec wordpress bashBashRehefa ao anaty shell wordpress dia manao installation wp-cli aloha.
# installation wp-cli
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
mv wp-cli.phar /usr/local/bin/wp
# manova ireo options homeurl sy siteurl ao anaty table options. Ilay port ao anaty docker-compose.yaml no atao eto
cd /var/www/html
wp option update home "http://localhost:8080" --allow-root
wp option update siteurl "http://localhost:8080" --allow-rootBashFehiny
Tokony mandeha tsara daholo amin'izay ny site, mitovy amin'ny any amin'ny prod.
Ireto ny index commandes maromaro docker sy docker compose ary wp-cli:
# Dump base de donnees via wp-cli
wp db export dump.sql
# Liste an'ireo conteneur mandeha
docker ps
# docker compose tokony hoe executena ao anatin'ilay repertoire misy ilay fichier docker-compose.yaml
# raha ao amin'ilay repertoire ianao dia afaka mijery ny status an'ilay conteneur
docker compose ps
# Mamelona ny conteneur rehetra (ao amin'ilay fichier docker-compose.yaml)
docker compose start
# Mamono, mazava ho azy
docker compose stop
# Mamafa ireo conteneurs
docker compose down
# Raha manao modif amina conteneur iray ianao ao anaty docker-compose.yaml dia iny ihany vonoina fa aza vonoina daholo eh. Ohatra nanao modif variable d'environnement WordPress
docker compose down wordpress
docker compose up -dBash
0 commentaire