Private
Public Access
1
0

Initial commit: complete WebsiteBox project

Docker-based self-hosted WordPress deployment system with:
- Four-container stack (nginx, wordpress/php-fpm, mariadb, certbot)
- Automatic SSL via Let's Encrypt with self-signed fallback
- First-boot WordPress setup via WP-CLI (GeneratePress + child theme, plugins)
- Interactive setup wizard and one-line install script
- Backup, update, healthcheck, and SSL renewal scripts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
constantprojects
2026-02-20 15:24:23 -07:00
commit a440026701
32 changed files with 3397 additions and 0 deletions

69
.env.example Normal file
View File

@@ -0,0 +1,69 @@
# WebsiteBox Configuration
# Copy this file to .env and fill in your values:
# cp .env.example .env
# Or run the setup wizard:
# ./setup.sh
# =============================================================================
# REQUIRED — Domain & Admin
# =============================================================================
# Your domain name (e.g., example.com)
DOMAIN=example.com
# WordPress site title
SITE_TITLE=My Portfolio
# WordPress admin credentials
ADMIN_USER=
ADMIN_EMAIL=
ADMIN_PASSWORD=
# =============================================================================
# DATABASE — Auto-generated by setup.sh (do not edit manually)
# =============================================================================
DB_NAME=websitebox
DB_USER=websitebox
DB_PASSWORD=
DB_ROOT_PASSWORD=
# =============================================================================
# AGE GATE
# =============================================================================
# Enable age verification gate (true/false)
AGE_GATE_ENABLED=true
# Minimum age (18-21)
AGE_GATE_MIN_AGE=18
# =============================================================================
# EMAIL (Optional) — SMTP relay for WordPress emails
# =============================================================================
SMTP_HOST=
SMTP_PORT=587
SMTP_USER=
SMTP_PASS=
SMTP_FROM=
# =============================================================================
# BACKUPS
# =============================================================================
# Days to keep local backups (1-365)
BACKUP_RETENTION_DAYS=30
# =============================================================================
# WORDPRESS SALTS — Auto-generated by setup.sh (do not edit manually)
# =============================================================================
AUTH_KEY=
SECURE_AUTH_KEY=
LOGGED_IN_KEY=
NONCE_KEY=
AUTH_SALT=
SECURE_AUTH_SALT=
LOGGED_IN_SALT=
NONCE_SALT=