WordPress » History » Revision 2
Revision 1 (Redmine Admin, 10/25/2026 04:30 PM) → Revision 2/4 (Redmine Admin, 10/26/2026 02:24 AM)
# WordPress sites Created by `~/deploy/add-wordpress-site.sh <domain> [short-name] [--no-egress] [--force] [--skip-npm-api]`. Short name derives from the domain (`www.mdsdefense.com` โ `mdsdefense`). Per site: | Object | Name | Notes | |---------------|---------------------------|--------------------------------------------| | --- | --- | --- | | Network | `net-<name>` | `net-<name>.network` | | MariaDB | `db-<name>` | `mariadb:11`, no PublishPort | | WordPress | `site-<name>` | `wordpress:php8.3-apache`, no PublishPort | | DB volume | `db-<name>-data` | `/var/lib/mysql` | | WP volume | `wp-<name>-content` | `/var/www/html` (core, themes, plugins, uploads, `.htaccess`) | | Secrets | `<name>-db-root-password` | env `MYSQL_ROOT_PASSWORD` in db | | | `<name>-db-password` | env `MYSQL_PASSWORD` (db) + `WORDPRESS_DB_PASSWORD` (site) | ```bash ``` # Themes / plugins / uploads on the host ls ~/.local/share/containers/storage/volumes/wp-<name>-content/_data/wp-content/themes/ # wp-config.php reads the DB password from the env at every request โ nothing to edit podman exec site-<name> grep -n DB_PASSWORD /var/www/html/wp-config.php # PHP upload limit lives in the volume's .htaccess (php_value block), not in the image podman exec site-<name> cat /var/www/html/.htaccess ``` MariaDB access (client only exists inside the container): ```bash ``` podman exec -it db-<name> sh -c 'mariadb -uroot -p"$MYSQL_ROOT_PASSWORD"' podman exec -it db-<name> mariadb -uroot -p'PASSWORD' # single quotes: + and = podman exec -it db-<name> mariadb -uroot -p"$(podman secret inspect --showsecret --format '{{.SecretData}}' <name>-db-root-password)" ``` ```sql ``` SELECT user, host, plugin FROM mysql.user; ALTER USER 'wordpress'@'%' IDENTIFIED BY 'NEW'; -- global, no USE needed FLUSH PRIVILEGES; ``` Dump / restore: ```bash ``` podman exec db-<name> sh -c 'mariadb-dump -uroot -p"$MYSQL_ROOT_PASSWORD" wordpress' > ~/tmp/<name>-$(date +%F).sql podman exec -i db-<name> sh -c 'mariadb -uroot -p"$MYSQL_ROOT_PASSWORD" wordpress' < ~/tmp/<name>-YYYY-MM-DD.sql ``` Staging โ production migration = DB dump/restore + `wp-content` copy (incl. `.htaccess`) + search-replace of the URL (`wp search-replace` via WP-CLI or the Better Search Replace plugin). --- _Source: *Source: `dmz-web-podman-cheatsheet.md` v1.1.1 in the `dmz-web-deploy` repo ([[Releases]]). ([Releases](#)). Edit the wiki and the repo copy together._ together.*