Tovább a tartalomhoz

DDEV

Docker-alapú lokális WordPress fejlesztői környezet DDEV segítségével.

A DDEV egy nyílt forráskódú, Docker-alapú lokális fejlesztői eszköz PHP projektekhez, beleértve a WordPress-t is. Gyors, megbízható és könnyen konfigurálható.

  • Docker-alapú - Izolált, reprodukálható környezetek
  • Gyors - Másodpercek alatt induló konténerek
  • Rugalmas - Bármilyen PHP verzió és konfiguráció
  • WordPress-barát - Beépített WP-CLI és Composer támogatás
  • Multisite támogatás - WordPress Multisite is működik
  • Add-on rendszer - Bővíthető funkcionalitás
Terminál
# Homebrew-val
brew install ddev/ddev/ddev
# Docker Desktop szükséges
brew install --cask docker
Terminál
# Chocolatey-vel
choco install ddev
# Vagy winget-tel
winget install ddev
Terminál
# Hivatalos telepítő script
curl -fsSL https://ddev.com/install.sh | bash
Terminál
mkdir my-wordpress-site
cd my-wordpress-site
Terminál
ddev config --project-type=wordpress
Terminál
ddev start
ddev wp core download --locale=hu_HU
Terminál
ddev wp core install \
--url='$DDEV_PRIMARY_URL' \
--title='My WordPress Site' \
--admin_user=admin \
--admin_password=admin \

A .ddev/config.yaml fájl tartalmazza a projekt beállításait:

name: my-wordpress-site
type: wordpress
docroot: ""
php_version: "8.2"
webserver_type: nginx-fpm
database:
type: mariadb
version: "10.6"
router_http_port: "80"
router_https_port: "443"
Terminál
ddev config --php-version=8.3
ddev restart
Verzió Státusz
7.4 Támogatott
8.0 Támogatott
8.1 Támogatott
8.2 Ajánlott
8.3 Legújabb
Terminál
# MariaDB-ről MySQL-re
ddev config --database=mysql:8.0
ddev restart
Terminál
# Projekt indítása
ddev start
# Projekt leállítása
ddev stop
# Projekt újraindítása
ddev restart
# Projekt törlése (adatokkal együtt)
ddev delete --omit-snapshot
# Projekt állapot
ddev describe
Terminál
# Bármilyen WP-CLI parancs
ddev wp plugin list
ddev wp theme list
ddev wp user list
ddev wp cache flush
# Importálás/exportálás
ddev wp db export backup.sql
ddev wp db import backup.sql
Terminál
# Composer parancsok
ddev composer install
ddev composer require wpackagist-plugin/akismet
ddev composer update
Terminál
# Web konténer
ddev ssh
# Adatbázis konténer
ddev ssh -s db
Terminál
# phpMyAdmin indítása
ddev launch -p
Terminál
# Adminer add-on telepítése
ddev get ddev/ddev-adminer
# Adminer indítása
ddev adminer
Terminál
# MySQL kliens
ddev mysql
# Adatbázis export
ddev export-db > backup.sql
# Adatbázis import
ddev import-db < backup.sql
Host: db (konténeren belül) / 127.0.0.1 (kívülről)
Port: 3306 (konténeren belül) / ddev describe mutatja (kívülről)
Database: db
Username: db
Password: db

DDEV automatikusan kezeli az SSL tanúsítványokat:

Terminál
# mkcert telepítése (egyszer)
mkcert -install
# Ezután minden projekt HTTPS-en érhető el
# https://my-wordpress-site.ddev.site

DDEV beépített Mailhog szolgáltatással rendelkezik:

Terminál
# Mailhog megnyitása
ddev launch -m
# Minden elküldött email itt jelenik meg
# https://my-wordpress-site.ddev.site:8026
Terminál
# Xdebug engedélyezése
ddev xdebug on
# Xdebug letiltása
ddev xdebug off
# Xdebug státusz
ddev xdebug status

.vscode/launch.json:

{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9003,
"pathMappings": {
"/var/www/html": "${workspaceFolder}"
}
}
]
}
  1. Preferences > PHP > Servers
  2. Add server: my-wordpress-site.ddev.site
  3. Port: 443, Debugger: Xdebug
  4. Use path mappings: /var/www/html → projekt mappa
Terminál
# Add-on telepítése
ddev get <add-on-name>
# Add-on eltávolítása
ddev get --remove <add-on-name>
Add-on Parancs Funkció
Redis ddev get ddev/ddev-redis Object cache
Elasticsearch ddev get ddev/ddev-elasticsearch Keresés
Memcached ddev get ddev/ddev-memcached Cache
Adminer ddev get ddev/ddev-adminer DB kezelő
phpMyAdmin ddev get ddev/ddev-phpmyadmin DB kezelő
Terminál
# Redis add-on
ddev get ddev/ddev-redis
ddev restart
# Redis Object Cache plugin
ddev wp plugin install redis-cache --activate
ddev wp redis enable
Terminál
# Összes projekt listázása
ddev list
# Összes projekt leállítása
ddev poweroff
# Adott projekt indítása
ddev start -s my-wordpress-site
Terminál
mkdir existing-site
cd existing-site
cp -r /path/to/wordpress/* .
Terminál
ddev config --project-type=wordpress
ddev start
Terminál
ddev import-db < database-backup.sql
Terminál
ddev wp search-replace 'https://old-domain.com' 'https://existing-site.ddev.site'

Egyedi szolgáltatások a .ddev/ mappában:

.ddev/docker-compose.custom.yaml:

version: '3.6'
services:
web:
environment:
- CUSTOM_VAR=value

.ddev/nginx_full/nginx-site.conf:

server {
# Egyedi nginx beállítások
client_max_body_size 100M;
}

.ddev/php/custom.ini:

upload_max_filesize = 100M
post_max_size = 100M
memory_limit = 512M
max_execution_time = 300
Terminál
# Ha a portok foglaltak
ddev config --router-http-port=8080 --router-https-port=8443
ddev restart
Terminál
# Docker újraindítása
ddev poweroff
# Indítsd újra a Docker Desktop-ot
ddev start
Terminál
# Mutagen engedélyezése a gyorsabb szinkronizáláshoz
ddev config --mutagen-enabled
ddev restart
Terminál
# Adatbázis snapshot
ddev snapshot
# Snapshot visszaállítása
ddev snapshot restore
# Adatbázis újraépítése
ddev delete --omit-snapshot
ddev start
ddev import-db < backup.sql
Terminál
# Site megnyitása böngészőben
ddev launch
# Admin megnyitása
ddev launch wp-admin

Add hozzá a ~/.bashrc vagy ~/.zshrc fájlhoz:

Terminál
alias dstart="ddev start"
alias dstop="ddev stop"
alias dwp="ddev wp"
alias dcomposer="ddev composer"

~/.ddev/global_config.yaml:

router_http_port: "80"
router_https_port: "443"
use_letsencrypt: false
letsencrypt_email: ""
internet_detection_timeout_ms: 3000
disable_http2: false
use_docker_compose_from_path: false
table_style: default
simple_formatting: false

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások