feat: setup Docker + MariaDB pour déploiement self-hosted
Deploy to Pacha Family / deploy (push) Failing after 3s
Deploy to Pacha Family / deploy (push) Failing after 3s
- Dockerfile (PHP 8.2 Apache + pdo_mysql) - docker-compose.yml (househub + mariadb + Traefik househub.nas.percolouco.com) - schema.sql (22 tables + données initiales) - includes/db.php adapté pour variables d'environnement - .env.example, .gitignore, README mis à jour Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
3f7ed9c2f1
commit
634e4647da
+6
-34
@@ -2,31 +2,13 @@
|
||||
if (file_exists(__DIR__ . '/config.php')) {
|
||||
require_once __DIR__ . '/config.php';
|
||||
}
|
||||
// Activer erreurs
|
||||
ini_set('display_errors', 1);
|
||||
ini_set('display_startup_errors', 1);
|
||||
error_reporting(E_ALL);
|
||||
|
||||
// Détection de l'environnement
|
||||
$isLocal = (strpos($_SERVER['HTTP_HOST'] ?? 'localhost', 'localhost') !== false ||
|
||||
strpos($_SERVER['HTTP_HOST'] ?? '', '127.0.0.1') !== false ||
|
||||
strpos($_SERVER['HTTP_HOST'] ?? '', '::1') !== false);
|
||||
|
||||
if ($isLocal) {
|
||||
// Configuration XAMPP local
|
||||
$host = 'localhost';
|
||||
$db = 'percolo314'; // Même nom que sur OVH pour simplifier
|
||||
$user = 'root';
|
||||
$pass = ''; // Généralement vide sur XAMPP
|
||||
} else {
|
||||
// Configuration serveur OVH
|
||||
$host = 'percolo314.mysql.db';
|
||||
$db = 'percolo314';
|
||||
$user = 'percolo314';
|
||||
$pass = 'Wxcvbn99';
|
||||
}
|
||||
|
||||
$host = getenv('DB_HOST') ?: 'househub-db';
|
||||
$db = getenv('DB_NAME') ?: 'househub';
|
||||
$user = getenv('DB_USER') ?: 'househub';
|
||||
$pass = getenv('DB_PASS') ?: 'changeme';
|
||||
$charset = 'utf8mb4';
|
||||
|
||||
$dsn = "mysql:host=$host;dbname=$db;charset=$charset";
|
||||
|
||||
$options = [
|
||||
@@ -39,18 +21,8 @@ $options = [
|
||||
|
||||
try {
|
||||
$pdo = new PDO($dsn, $user, $pass, $options);
|
||||
|
||||
// Forcer la collation
|
||||
$pdo->exec("SET collation_connection = utf8mb4_general_ci");
|
||||
$pdo->exec("SET collation_database = utf8mb4_general_ci");
|
||||
$pdo->exec("SET collation_server = utf8mb4_general_ci");
|
||||
|
||||
// Debug optionnel (à commenter en production)
|
||||
// $env = $isLocal ? 'LOCAL' : 'SERVEUR';
|
||||
// echo "<!-- Connecté en $env sur $host/$db -->";
|
||||
|
||||
} catch (\PDOException $e) {
|
||||
$environment = $isLocal ? 'local (XAMPP)' : 'serveur (OVH)';
|
||||
die("Erreur de connexion ($environment) : " . $e->getMessage());
|
||||
die("Erreur de connexion BDD : " . $e->getMessage());
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user