diff --git a/deploy-techsolidaire.sh b/deploy-techsolidaire.sh new file mode 100644 index 0000000..2a574e4 --- /dev/null +++ b/deploy-techsolidaire.sh @@ -0,0 +1,293 @@ +#!/usr/bin/env bash +# +# deploy-techsolidaire.sh +# -------------------------------------------------------------------------- +# Déploie via Docker un site vitrine (fictif) pour une association +# communautaire d'entraide technologique : "TechSolidaire". +# +# Le site tient sur une seule page HTML (CSS intégré, aucun menu, +# aucun lien externe). Le script génère les fichiers, construit l'image +# Docker basée sur nginx, puis lance le conteneur. +# +# Usage : +# ./deploy-techsolidaire.sh # déploie sur le port 8080 +# PORT=9000 ./deploy-techsolidaire.sh # déploie sur un autre port +# -------------------------------------------------------------------------- + +set -euo pipefail + +# --- Paramètres configurables --------------------------------------------- +PROJECT_DIR="${PROJECT_DIR:-./techsolidaire-site}" +IMAGE_NAME="${IMAGE_NAME:-techsolidaire-vitrine}" +CONTAINER_NAME="${CONTAINER_NAME:-techsolidaire}" +PORT="${PORT:-8080}" + +# --- Couleurs pour les messages -------------------------------------------- +GREEN='\033[0;32m'; BLUE='\033[0;34m'; YELLOW='\033[1;33m'; NC='\033[0m' +info() { echo -e "${BLUE}[INFO]${NC} $*"; } +ok() { echo -e "${GREEN}[OK]${NC} $*"; } +warn() { echo -e "${YELLOW}[ATTENTION]${NC} $*"; } + +# --- Vérifications préalables ----------------------------------------------- +if ! command -v docker >/dev/null 2>&1; then + echo "Docker n'est pas installé ou pas dans le PATH. Installe Docker d'abord." >&2 + exit 1 +fi + +if ! docker info >/dev/null 2>&1; then + echo "Le démon Docker ne répond pas. Démarre Docker puis relance le script." >&2 + exit 1 +fi + +# --- Préparation de l'arborescence ------------------------------------------ +info "Préparation du dossier de projet : ${PROJECT_DIR}" +mkdir -p "${PROJECT_DIR}" + +# --- Génération de la page web (une seule page, sans lien externe) ---------- +info "Génération de la page web index.html" +cat > "${PROJECT_DIR}/index.html" << 'EOF' + + +
+ + ++ Une association communautaire qui démocratise l'accès au numérique : + partage de savoirs, réparation, et accompagnement, par et pour les habitants. +
++ TechSolidaire réunit bénévoles, passionnés et curieux autour d'une idée + simple : la technologie ne doit laisser personne de côté. Nous animons + des ateliers ouverts à tous, accompagnons celles et ceux qui se sentent + démunis face aux outils numériques, et donnons une seconde vie au + matériel informatique plutôt que de le jeter. +
++ Chaque rencontre repose sur l'échange : ici, on apprend en faisant, on + partage ce que l'on sait, et l'on construit ensemble des solutions + concrètes. L'entraide est notre seul mode d'emploi. +
++ Portée par une équipe entièrement bénévole, notre association se mobilise + chaque semaine sur le terrain. Notre force, c'est le collectif. +
+Un aperçu de ce que nous menons au quotidien.
++ Un rendez-vous mensuel pour diagnostiquer et réparer ensemble + ordinateurs, smartphones et petits appareils, plutôt que de les + remplacer. +
++ Des sessions d'initiation pour les seniors et les personnes éloignées + du numérique : démarches en ligne, messagerie, sécurité de base. +
++ Nous collectons du matériel inutilisé, le remettons en état et le + redistribuons aux familles et aux associations qui en ont besoin. +
++ Un hébergement de services libres géré par la communauté, pour + partager fichiers et outils sans dépendre des grandes plateformes. +
+