gustavoo-portfolio-core refuses to activate without fluentform, fluent-crm and fluent-smtp, but those were gitignored and not installed by the setup: any fresh clone ended with the core plugin inactive and the seeder skipped. They are now part of the default WP_EXTRA_PLUGINS (verified slugs on WordPress.org), with .env.example, compose default, README and .gitignore updated to match.
92 lines
3.0 KiB
YAML
92 lines
3.0 KiB
YAML
services:
|
|
db:
|
|
image: mariadb:11
|
|
environment:
|
|
MARIADB_DATABASE: ${WORDPRESS_DB_NAME}
|
|
MARIADB_USER: ${WORDPRESS_DB_USER}
|
|
MARIADB_PASSWORD: ${WORDPRESS_DB_PASSWORD}
|
|
MARIADB_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD}
|
|
volumes:
|
|
- db_data:/var/lib/mysql
|
|
healthcheck:
|
|
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 10
|
|
start_period: 30s
|
|
|
|
wordpress:
|
|
container_name: gustavoo-me
|
|
image: wordpress:php8.3-apache
|
|
ports:
|
|
- "${WORDPRESS_PORT:-8080}:80"
|
|
environment:
|
|
WORDPRESS_DB_HOST: db
|
|
WORDPRESS_DB_NAME: ${WORDPRESS_DB_NAME}
|
|
WORDPRESS_DB_USER: ${WORDPRESS_DB_USER}
|
|
WORDPRESS_DB_PASSWORD: ${WORDPRESS_DB_PASSWORD}
|
|
volumes:
|
|
- wordpress_data:/var/www/html
|
|
- ./wp-content/themes:/var/www/html/wp-content/themes
|
|
- ./wp-content/plugins:/var/www/html/wp-content/plugins
|
|
- ./php.ini:/usr/local/etc/php/conf.d/uploads.ini
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_healthy
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
volumes:
|
|
- redis_data:/data
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "ping"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 10
|
|
start_period: 10s
|
|
|
|
wpcli:
|
|
image: wordpress:cli-php8.3
|
|
user: "${WPCLI_UID:-33}:${WPCLI_GID:-33}"
|
|
depends_on:
|
|
wordpress:
|
|
condition: service_started
|
|
redis:
|
|
condition: service_healthy
|
|
environment:
|
|
WORDPRESS_DB_HOST: db
|
|
WORDPRESS_DB_NAME: ${WORDPRESS_DB_NAME}
|
|
WORDPRESS_DB_USER: ${WORDPRESS_DB_USER}
|
|
WORDPRESS_DB_PASSWORD: ${WORDPRESS_DB_PASSWORD}
|
|
WORDPRESS_PORT: ${WORDPRESS_PORT:-8080}
|
|
WORDPRESS_SITE_URL: ${WORDPRESS_SITE_URL:-http://localhost:${WORDPRESS_PORT:-8080}}
|
|
WORDPRESS_SITE_TITLE: ${WORDPRESS_SITE_TITLE:-Gustavo Portfolio}
|
|
WORDPRESS_ADMIN_USER: ${WORDPRESS_ADMIN_USER:-admin}
|
|
WORDPRESS_ADMIN_PASSWORD: ${WORDPRESS_ADMIN_PASSWORD:-admin}
|
|
WORDPRESS_ADMIN_EMAIL: ${WORDPRESS_ADMIN_EMAIL:-admin@example.com}
|
|
WP_REDIS_HOST: ${WP_REDIS_HOST:-redis}
|
|
WP_REDIS_PORT: ${WP_REDIS_PORT:-6379}
|
|
WP_REDIS_PASSWORD: ${WP_REDIS_PASSWORD:-}
|
|
WP_REDIS_DATABASE: ${WP_REDIS_DATABASE:-}
|
|
WP_EXTRA_PLUGINS: ${WP_EXTRA_PLUGINS:-post-views-counter seo-by-rank-math google-site-kit fluentform fluent-crm fluent-smtp}
|
|
WP_LOCALE: ${WP_LOCALE:-pt_BR}
|
|
WP_SKIP_UPDATES: ${WP_SKIP_UPDATES:-}
|
|
WP_THEME: ${WP_THEME:-gustavoo-portfolio}
|
|
WP_KEEP_THEMES: ${WP_KEEP_THEMES:-}
|
|
FORBIDDEN_PATTERN: ${FORBIDDEN_PATTERN:-}
|
|
WP_ALLOW_FORBIDDEN_PLUGINS: ${WP_ALLOW_FORBIDDEN_PLUGINS:-}
|
|
HOME: /tmp
|
|
volumes:
|
|
- wordpress_data:/var/www/html
|
|
- ./wp-content/themes:/var/www/html/wp-content/themes
|
|
- ./wp-content/plugins:/var/www/html/wp-content/plugins
|
|
- ./docker/wp-init.sh:/wp-init.sh:ro
|
|
entrypoint: ["sh", "/wp-init.sh"]
|
|
restart: "no"
|
|
|
|
volumes:
|
|
db_data:
|
|
wordpress_data:
|
|
redis_data: |