#!/bin/bash echo "启动 Hugging Face Space WordPress..." # 设置初始数据持久化 /scripts/setup-data.sh # 配置安全设置 /scripts/setup-security.sh # 配置日志轮转 cp /config/logrotate/wordpress /etc/logrotate.d/wordpress # 启动 MySQL echo "启动 MySQL..." mysqld_safe --datadir=/data/mysql --user=mysql & MYSQL_PID=$! # 等待 MySQL 启动 echo "等待 MySQL 启动..." for i in {1..30}; do if mysqladmin ping --silent 2>/dev/null; then echo "MySQL 已启动" break fi if [ $i -eq 30 ]; then echo "MySQL 启动超时" exit 1 fi sleep 2 done # 初始化 WordPress 数据库 echo "初始化 WordPress 数据库..." mysql -u root -e " CREATE DATABASE IF NOT EXISTS wordpress; CREATE USER IF NOT EXISTS 'wordpress'@'localhost' IDENTIFIED BY 'wordpress_password'; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost'; FLUSH PRIVILEGES; " 2>/dev/null || true # 复制 WordPress 配置文件 if [ ! -f "/var/www/html/wp-config.php" ]; then cp /var/www/html/wp-config-sample.php /var/www/html/wp-config.php fi # 配置 Apache 监听端口 7860 sed -i 's/Listen 80/Listen 7860/' /etc/apache2/ports.conf 2>/dev/null || true # 启动 Apache echo "启动 Apache (端口 7860)..." apache2ctl -D FOREGROUND & APACHE_PID=$! # 等待 Apache 启动 sleep 5 # 运行存储监控 /scripts/monitor-storage.sh # 健康检查 echo "执行健康检查..." if curl -f http://localhost:7860/ >/dev/null 2>&1; then echo "WordPress 服务已启动并可通过端口 7860 访问" else echo "警告: WordPress 服务可能未正常启动" fi echo "所有服务已启动" echo "WordPress 管理员入口: http://localhost:7860/wp-admin/" echo "数据持久化目录: /data" # 保持容器运行 wait $APACHE_PID $MYSQL_PID