Add WordPress/WooCommerce stack and generic env hosts
This commit is contained in:
parent
9138160322
commit
e5f814df53
4 changed files with 75 additions and 0 deletions
13
.env.example
13
.env.example
|
|
@ -39,6 +39,7 @@ CADDY_ACME_EMAIL=ops@example.com
|
|||
BANK_HOST=bank.domain.tld
|
||||
EXCHANGE_HOST=exchange.domain.tld
|
||||
MERCHANT_HOST=merchant.domain.tld
|
||||
WORDPRESS_HOST=wordpress.domain.tld
|
||||
|
||||
# Secrets path (host path mounted into /etc/taler/secrets)
|
||||
EXCHANGE_SECRETS_PATH=./exchange/secrets
|
||||
|
|
@ -59,3 +60,15 @@ OPEN_BANKING_GATEWAY_URL=https://bank.domain.tld
|
|||
BANK_BASE_URL=https://bank.domain.tld/
|
||||
|
||||
TALER_CURRENCY=DEMOGELD
|
||||
|
||||
# WordPress / WooCommerce
|
||||
WP_DB_ROOT_PASSWORD=wordpressroot
|
||||
WP_DB_NAME=wordpress
|
||||
WP_DB_USER=wordpress
|
||||
WP_DB_PASSWORD=wordpress
|
||||
WP_DB_HOST=mariadb
|
||||
WP_TABLE_PREFIX=wp_
|
||||
WP_URL=https://wordpress.domain.tld
|
||||
WP_ADMIN_USER=admin
|
||||
WP_ADMIN_PASSWORD=change_me
|
||||
WP_ADMIN_EMAIL=ops@example.com
|
||||
|
|
|
|||
|
|
@ -28,6 +28,10 @@ Container-Stack für GNU Taler (Exchange, Merchant, LibEuFin Bank) mit optionale
|
|||
- Bei Domainwechsel passen BASE_URL/PAYTO in der `.env` ebenfalls an (Templates rendern automatisch beim Start).
|
||||
- Direktes Port-Mapping (8080/8081/9966) kannst du entfernen, wenn nur Caddy nach außen gehen soll.
|
||||
|
||||
## WordPress/WooCommerce (optional)
|
||||
- Services `mariadb`, `wordpress`, `wp-init`. `wp-init` installiert bei Bedarf Core, WooCommerce und das Plugin `gnu-taler-payment-for-woocommerce`.
|
||||
- Env in `.env` setzen (`WP_DB_*`, `WP_URL`, Admin-Creds, `WORDPRESS_HOST`); Default-Port 8085 oder über Caddy (`WORDPRESS_HOST`).
|
||||
|
||||
## Hinweise
|
||||
- Passwörter in `.env` müssen zu `postgres/init/01-init-taler.sh` passen (wird automatisch per Env gesetzt).
|
||||
- Master-Key muss stabil bleiben; nur Pfad mounten, nicht neu generieren.
|
||||
|
|
|
|||
|
|
@ -13,3 +13,7 @@
|
|||
{$MERCHANT_HOST} {
|
||||
reverse_proxy merchant:9966
|
||||
}
|
||||
|
||||
{$WORDPRESS_HOST} {
|
||||
reverse_proxy wordpress:80
|
||||
}
|
||||
|
|
|
|||
54
compose.yml
54
compose.yml
|
|
@ -108,8 +108,62 @@ services:
|
|||
BANK_HOST: ${BANK_HOST:-ob.antifa.ltd}
|
||||
EXCHANGE_HOST: ${EXCHANGE_HOST:-exchange.antifa.ltd}
|
||||
MERCHANT_HOST: ${MERCHANT_HOST:-merchant.antifa.ltd}
|
||||
WORDPRESS_HOST: ${WORDPRESS_HOST:-wordpress.domain.tld}
|
||||
|
||||
mariadb:
|
||||
image: mariadb:11
|
||||
environment:
|
||||
MARIADB_ROOT_PASSWORD: ${WP_DB_ROOT_PASSWORD:-wordpressroot}
|
||||
MARIADB_DATABASE: ${WP_DB_NAME:-wordpress}
|
||||
MARIADB_USER: ${WP_DB_USER:-wordpress}
|
||||
MARIADB_PASSWORD: ${WP_DB_PASSWORD:-wordpress}
|
||||
volumes:
|
||||
- mariadb_data:/var/lib/mysql
|
||||
|
||||
wordpress:
|
||||
image: wordpress:6.5-php8.2-apache
|
||||
depends_on: [mariadb]
|
||||
environment:
|
||||
WORDPRESS_DB_HOST: ${WP_DB_HOST:-mariadb}
|
||||
WORDPRESS_DB_NAME: ${WP_DB_NAME:-wordpress}
|
||||
WORDPRESS_DB_USER: ${WP_DB_USER:-wordpress}
|
||||
WORDPRESS_DB_PASSWORD: ${WP_DB_PASSWORD:-wordpress}
|
||||
WORDPRESS_TABLE_PREFIX: ${WP_TABLE_PREFIX:-wp_}
|
||||
volumes:
|
||||
- wordpress_data:/var/www/html
|
||||
ports:
|
||||
- "8085:80"
|
||||
|
||||
wp-init:
|
||||
image: wordpress:cli-php8.2
|
||||
depends_on: [wordpress]
|
||||
environment:
|
||||
WORDPRESS_DB_HOST: ${WP_DB_HOST:-mariadb}
|
||||
WORDPRESS_DB_NAME: ${WP_DB_NAME:-wordpress}
|
||||
WORDPRESS_DB_USER: ${WP_DB_USER:-wordpress}
|
||||
WORDPRESS_DB_PASSWORD: ${WP_DB_PASSWORD:-wordpress}
|
||||
WORDPRESS_TABLE_PREFIX: ${WP_TABLE_PREFIX:-wp_}
|
||||
WP_URL: ${WP_URL:-https://wordpress.domain.tld}
|
||||
WP_ADMIN_USER: ${WP_ADMIN_USER:-admin}
|
||||
WP_ADMIN_PASSWORD: ${WP_ADMIN_PASSWORD:-change_me}
|
||||
WP_ADMIN_EMAIL: ${WP_ADMIN_EMAIL:-ops@example.com}
|
||||
volumes:
|
||||
- wordpress_data:/var/www/html
|
||||
entrypoint: ["/bin/sh","-c"]
|
||||
command: >
|
||||
set -e;
|
||||
cd /var/www/html;
|
||||
wp core is-installed --allow-root ||
|
||||
wp core install --allow-root --url="${WP_URL}" --title="Taler Demo Shop"
|
||||
--admin_user="${WP_ADMIN_USER}" --admin_password="${WP_ADMIN_PASSWORD}" --admin_email="${WP_ADMIN_EMAIL}";
|
||||
wp plugin is-installed woocommerce --allow-root || wp plugin install woocommerce --activate --allow-root;
|
||||
wp plugin is-installed gnu-taler-payment-for-woocommerce --allow-root || wp plugin install gnu-taler-payment-for-woocommerce --activate --allow-root;
|
||||
echo "WordPress init complete.";
|
||||
restart: "no"
|
||||
|
||||
volumes:
|
||||
pgdata: {}
|
||||
caddy_data: {}
|
||||
caddy_config: {}
|
||||
mariadb_data: {}
|
||||
wordpress_data: {}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue