No description
  • PHP 58.4%
  • Python 40.7%
  • Dockerfile 0.9%
Find a file
2026-01-28 20:17:33 +00:00
conf v1 2026-01-12 00:03:44 +01:00
html v1.1 2026-01-28 20:17:33 +00:00
logs v1 2026-01-12 00:03:44 +01:00
SSL-gen v1 2026-01-12 00:03:05 +01:00
docker-compose.yml v1 2026-01-12 00:03:05 +01:00
Dockerfile v1 2026-01-12 00:03:05 +01:00
documentation.docx v1 2026-01-12 00:03:05 +01:00
documentation.pdf v1 2026-01-12 00:03:05 +01:00
LICENSE Change license from BSD 3-Clause to MIT License 2026-01-11 23:58:25 +01:00
login.txt v1 2026-01-12 00:03:05 +01:00
README.md Update README.md 2026-01-12 18:07:05 +01:00

Framwork image

Un framework PHP léger et dockerisé pour démarrer rapidement un site web sécurisé avec authentification.

🎯 Objectif

Framework minimaliste offrant les fonctionnalités essentielles pour créer un site web sécurisé :

  • Page de connexion/déconnexion
  • Sécurisation des pages (authentification requise)
  • Base de données SQLite (pas de serveur DB externe)
  • Gestion des utilisateurs
  • Interface d'administration
  • Mots de passe hashés (bcrypt)
  • Déploiement Docker en une commande

🚀 Démarrage rapide

Prérequis

  • Docker et Docker Compose installés
  • Port 443 (HTTPS) disponible

Installation

# Cloner le projet
git clone https://github.com/votre-username/framwork.git
cd framwork

# Démarrer l'application
docker compose up -d --build

# L'application est accessible sur https://localhost

Compte par défaut

Identifiant Valeur
Utilisateur admin
Mot de passe admin

⚠️ Important : Changez le mot de passe admin dès la première connexion !

📋 Fonctionnalités

Authentification

  • Système de connexion sécurisé avec sessions PHP
  • Hashage des mots de passe avec bcrypt
  • Redirection automatique vers login si non authentifié

Gestion des utilisateurs

  • Création de nouveaux utilisateurs
  • Attribution de droits (utilisateur/administrateur)
  • Liste et gestion des comptes

Base de données

  • SQLite embarqué (aucune configuration requise)
  • Fichier unique UserData.db
  • Gestion automatique des tables

Sécurité des pages

Pour protéger une page, ajoutez simplement en première ligne :

<?php
require 'auth.php';
?>

Exemple :

<?php
require 'auth.php'; // Page protégée
?>
<!DOCTYPE html>
<html>
<head>
    <title>Dashboard</title>
</head>
<body>
    <h1>Tableau de bord privé</h1>
    <p>Contenu accessible uniquement aux utilisateurs connectés.</p>
</body>
</html>

🛠️ Commandes Docker

Démarrer l'application

docker compose up -d

Arrêter l'application

docker compose down

Voir les logs

docker compose logs -f

Reconstruire complètement

docker compose down
docker compose build --no-cache
docker compose up -d

Accéder au conteneur

docker compose exec web bash

💾 Sauvegarde et restauration

Sauvegarder la base de données

docker compose cp web:/var/www/html/UserData.db ./backup/UserData_$(date +%Y%m%d).db

Restaurer une sauvegarde

docker compose cp ./backup/UserData.db web:/var/www/html/UserData.db

L'application ne démarre pas

# Vérifier les logs
docker compose logs

# Supprimer et reconstruire
docker compose down -v
docker compose up -d --build

Erreur 502 Bad Gateway

Vérifiez que PHP-FPM fonctionne :

docker compose exec web php-fpm -t

Base de données corrompue

Restaurez une sauvegarde ou supprimez UserData.db pour recréer une base vierge.

Port déjà utilisé

Si le port 443 est occupé :

# Voir ce qui utilise le port
sudo lsof -i :443

# Ou changez le port dans docker-compose.yml

Intégration avec frontend moderne

Le framework peut servir de backend pour React, Vue ou Angular :

# Frontend sur port 3000
# Backend (ce framework) sur port 443
# Configurez CORS dans nginx.conf si nécessaire

📄 Licence

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.

Images Docker tierces

Ce projet utilise les images Docker officielles suivantes :

Les images sont automatiquement téléchargées depuis Docker Hub lors du build.

Made with ❤️ using PHP, Nginx, SQLite and Docker