Transformer en template docker-stack-template avec .env.example
- Ajout .env.example : variables Docker Compose - docker-compose.yml : mots de passe variabilises - Scripts : chargement de config a 2 niveaux (global + per-app) - docker-scripts.conf : renomme docker-stack-template - URLs mises a jour dans setup, install_cron, README
This commit is contained in:
@@ -0,0 +1,22 @@
|
|||||||
|
# =============================================================================
|
||||||
|
# .env.example — Variables d'environnement pour Docker Compose
|
||||||
|
# =============================================================================
|
||||||
|
# Copiez ce fichier en .env et modifiez les valeurs avant le déploiement.
|
||||||
|
# cp .env.example .env
|
||||||
|
#
|
||||||
|
# Ce fichier est lu automatiquement par docker compose.
|
||||||
|
# =============================================================================
|
||||||
|
|
||||||
|
# ─── MySQL ────────────────────────────────────────────────────────────────────
|
||||||
|
MYSQL_ROOT_PASSWORD=gitea
|
||||||
|
MYSQL_DATABASE=gitea
|
||||||
|
MYSQL_USER=gitea
|
||||||
|
MYSQL_PASSWORD=change_me_in_production
|
||||||
|
|
||||||
|
# ─── Application ──────────────────────────────────────────────────────────────
|
||||||
|
GITEA_DB_PASSWORD=${MYSQL_PASSWORD}
|
||||||
|
GITEA_DISABLE_REGISTRATION=true
|
||||||
|
|
||||||
|
# ─── Utilisateur conteneur ────────────────────────────────────────────────────
|
||||||
|
USER_UID=1000
|
||||||
|
USER_GID=1000
|
||||||
@@ -108,7 +108,7 @@ sudo chown -R $USER:$USER /opt/docker-scripts /srv/docker
|
|||||||
|
|
||||||
# 2. Cloner les scripts
|
# 2. Cloner les scripts
|
||||||
cd /opt
|
cd /opt
|
||||||
git clone https://git.dracodev.net/Outils/docker-generic-scripts.git docker-scripts
|
git clone https://git.dracodev.net/Outils/docker-stack-template.git docker-scripts
|
||||||
|
|
||||||
# 3. Installer
|
# 3. Installer
|
||||||
bash /opt/docker-scripts/setup.sh
|
bash /opt/docker-scripts/setup.sh
|
||||||
|
|||||||
+13
-10
@@ -11,26 +11,29 @@
|
|||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# ─── Charger la configuration commune ─────────────────────────────────────────
|
# ─── Charger la configuration ────────────────────────────────────────────────
|
||||||
|
# Ordre : 1) config globale (template) → 2) config spécifique à l'app (surcharge)
|
||||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||||
CONFIG_FILE="${CONFIG_FILE:-$SCRIPT_DIR/docker-scripts.conf}"
|
|
||||||
|
|
||||||
if [[ -f "$CONFIG_FILE" ]]; then
|
GLOBAL_CONFIG="${SCRIPT_DIR}/docker-scripts.conf"
|
||||||
|
if [[ -f "$GLOBAL_CONFIG" ]]; then
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "$CONFIG_FILE"
|
source "$GLOBAL_CONFIG"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ─── Nom de l'application (défaut si pas dans la config) ─────────────────────
|
# ─── Nom de l'application (défaut si pas dans la config) ─────────────────────
|
||||||
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
||||||
|
|
||||||
# ─── Configuration locale (après chargement conf, permet surcharge env) ──────
|
# ─── Configuration locale (après chargement global, permet surcharge env) ────
|
||||||
COMPOSE_DIR="${COMPOSE_DIR:-/srv/docker/$DOCKER_APP_NAME}"
|
COMPOSE_DIR="${COMPOSE_DIR:-/srv/docker/$DOCKER_APP_NAME}"
|
||||||
COMPOSE_FILE="${COMPOSE_FILE:-docker-compose.yml}"
|
COMPOSE_FILE="${COMPOSE_FILE:-docker-compose.yml}"
|
||||||
APP_SERVICE="${APP_SERVICE:-${DOCKER_APP_NAME}_server}"
|
|
||||||
APP_CONTAINER="${APP_CONTAINER:-${DOCKER_APP_NAME}_server}"
|
# Charger la config spécifique à l'application (surcharge la config globale)
|
||||||
DB_CONTAINER="${DB_CONTAINER:-${DOCKER_APP_NAME}_db}"
|
APP_CONFIG="${COMPOSE_DIR}/docker-scripts.conf"
|
||||||
IMAGE_NAME="${IMAGE_NAME:-gitea/gitea}"
|
if [[ -f "$APP_CONFIG" ]] && [[ "$APP_CONFIG" != "$GLOBAL_CONFIG" ]]; then
|
||||||
IMAGE_TAG="${IMAGE_TAG:-latest}"
|
# shellcheck source=/dev/null
|
||||||
|
source "$APP_CONFIG"
|
||||||
|
fi
|
||||||
|
|
||||||
# Base de données
|
# Base de données
|
||||||
DB_NAME="${DB_NAME:-$DOCKER_APP_NAME}"
|
DB_NAME="${DB_NAME:-$DOCKER_APP_NAME}"
|
||||||
|
|||||||
+14
-7
@@ -17,23 +17,30 @@
|
|||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# ─── Charger la configuration commune ─────────────────────────────────────────
|
# ─── Charger la configuration ────────────────────────────────────────────────
|
||||||
|
# Ordre : 1) config globale (template) → 2) config spécifique à l'app (surcharge)
|
||||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||||
CONFIG_FILE="${CONFIG_FILE:-$SCRIPT_DIR/docker-scripts.conf}"
|
|
||||||
|
|
||||||
if [[ -f "$CONFIG_FILE" ]]; then
|
GLOBAL_CONFIG="${SCRIPT_DIR}/docker-scripts.conf"
|
||||||
|
if [[ -f "$GLOBAL_CONFIG" ]]; then
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "$CONFIG_FILE"
|
source "$GLOBAL_CONFIG"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ─── Nom de l'application (défaut si pas dans la config) ─────────────────────
|
# ─── Nom de l'application (défaut si pas dans la config) ─────────────────────
|
||||||
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
||||||
|
|
||||||
# ─── Configuration locale (après chargement conf, permet surcharge env) ──────
|
# ─── Configuration locale (après chargement global, permet surcharge env) ────
|
||||||
BACKUP_DIR="${BACKUP_DIR:-/NFS/BACKUP/DOCKER/$HOSTNAME/$DOCKER_APP_NAME}"
|
COMPOSE_DIR="${COMPOSE_DIR:-/srv/docker/$DOCKER_APP_NAME}"
|
||||||
COMPOSE_DIR="${COMPOSE_DIR:-$HOME/dev/git/outils/$DOCKER_APP_NAME}"
|
|
||||||
COMPOSE_FILE="${COMPOSE_FILE:-docker-compose.yml}"
|
COMPOSE_FILE="${COMPOSE_FILE:-docker-compose.yml}"
|
||||||
|
|
||||||
|
# Charger la config spécifique à l'application (surcharge la config globale)
|
||||||
|
APP_CONFIG="${COMPOSE_DIR}/docker-scripts.conf"
|
||||||
|
if [[ -f "$APP_CONFIG" ]] && [[ "$APP_CONFIG" != "$GLOBAL_CONFIG" ]]; then
|
||||||
|
# shellcheck source=/dev/null
|
||||||
|
source "$APP_CONFIG"
|
||||||
|
fi
|
||||||
|
|
||||||
# Conteneurs (dérivés de DOCKER_APP_NAME)
|
# Conteneurs (dérivés de DOCKER_APP_NAME)
|
||||||
DB_CONTAINER="${DB_CONTAINER:-${DOCKER_APP_NAME}_db}"
|
DB_CONTAINER="${DB_CONTAINER:-${DOCKER_APP_NAME}_db}"
|
||||||
APP_CONTAINER="${APP_CONTAINER:-${DOCKER_APP_NAME}_server}"
|
APP_CONTAINER="${APP_CONTAINER:-${DOCKER_APP_NAME}_server}"
|
||||||
|
|||||||
+10
-10
@@ -8,14 +8,14 @@ services:
|
|||||||
image: gitea/gitea:latest
|
image: gitea/gitea:latest
|
||||||
container_name: gitea_server
|
container_name: gitea_server
|
||||||
environment:
|
environment:
|
||||||
- USER_UID=1000
|
- USER_UID=${USER_UID:-1000}
|
||||||
- USER_GID=1000
|
- USER_GID=${USER_GID:-1000}
|
||||||
- GITEA__database__DB_TYPE=mysql
|
- GITEA__database__DB_TYPE=mysql
|
||||||
- GITEA__database__HOST=gitea_db:3306
|
- GITEA__database__HOST=gitea_db:3306
|
||||||
- GITEA__database__NAME=gitea
|
- GITEA__database__NAME=${MYSQL_DATABASE:-gitea}
|
||||||
- GITEA__database__USER=gitea
|
- GITEA__database__USER=${MYSQL_USER:-gitea}
|
||||||
- GITEA__database__PASSWD=chab30
|
- GITEA__database__PASSWD=${GITEA_DB_PASSWORD:-${MYSQL_PASSWORD:-change_me}}
|
||||||
- GITEA__DISABLE_REGISTRATION=true
|
- GITEA__DISABLE_REGISTRATION=${GITEA_DISABLE_REGISTRATION:-true}
|
||||||
restart: always
|
restart: always
|
||||||
networks:
|
networks:
|
||||||
- gitea
|
- gitea
|
||||||
@@ -42,10 +42,10 @@ services:
|
|||||||
container_name: gitea_db
|
container_name: gitea_db
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
- MYSQL_ROOT_PASSWORD=gitea
|
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD:-gitea}
|
||||||
- MYSQL_USER=gitea
|
- MYSQL_USER=${MYSQL_USER:-gitea}
|
||||||
- MYSQL_PASSWORD=chab30
|
- MYSQL_PASSWORD=${MYSQL_PASSWORD:-change_me}
|
||||||
- MYSQL_DATABASE=gitea
|
- MYSQL_DATABASE=${MYSQL_DATABASE:-gitea}
|
||||||
networks:
|
networks:
|
||||||
- gitea
|
- gitea
|
||||||
volumes:
|
volumes:
|
||||||
|
|||||||
+16
-7
@@ -1,10 +1,15 @@
|
|||||||
# =============================================================================
|
# =============================================================================
|
||||||
# docker-scripts.conf — Configuration unifiée pour scripts Docker génériques
|
# docker-scripts.conf — Configuration pour scripts Docker (TEMPLATE GLOBAL)
|
||||||
# =============================================================================
|
# =============================================================================
|
||||||
# Ce fichier est sourcé par tous les scripts (backup, auto-update, install_cron).
|
# Ce fichier dans /opt/docker-scripts/ est le TEMPLATE par défaut.
|
||||||
# Les valeurs peuvent être surchargées par des variables d'environnement.
|
# Toutes les valeurs utilisent ${VAR:-defaut} pour être surchargeables.
|
||||||
#
|
#
|
||||||
# Pour réutiliser avec une autre app Docker, changer DOCKER_APP_NAME :
|
# Pour déployer une nouvelle app :
|
||||||
|
# 1. cp /opt/docker-scripts/docker-scripts.conf /srv/docker/monapp/
|
||||||
|
# 2. Éditer DOCKER_APP_NAME, IMAGE_NAME et les mots de passe
|
||||||
|
# 3. Les scripts chargent automatiquement la config de l'app en priorité
|
||||||
|
#
|
||||||
|
# Surcharge possible par variable d'environnement :
|
||||||
# DOCKER_APP_NAME=monapp bash docker-backup.sh
|
# DOCKER_APP_NAME=monapp bash docker-backup.sh
|
||||||
# =============================================================================
|
# =============================================================================
|
||||||
|
|
||||||
@@ -13,10 +18,11 @@
|
|||||||
HOSTNAME="${HOSTNAME:-$(hostname)}"
|
HOSTNAME="${HOSTNAME:-$(hostname)}"
|
||||||
|
|
||||||
# Dépôt Git source (utilisé par setup.sh pour clone/mise à jour)
|
# Dépôt Git source (utilisé par setup.sh pour clone/mise à jour)
|
||||||
GIT_REPO="${GIT_REPO:-https://git.dracodev.net/Outils/docker-generic-scripts.git}"
|
GIT_REPO="${GIT_REPO:-https://git.dracodev.net/Outils/docker-stack-template.git}"
|
||||||
GIT_BRANCH="${GIT_BRANCH:-main}"
|
GIT_BRANCH="${GIT_BRANCH:-main}"
|
||||||
|
|
||||||
# Nom de l'application Docker (définit tous les dérivés)
|
# Nom de l'application Docker (définit tous les dérivés)
|
||||||
|
# 🔧 À CHANGER pour chaque app : DOCKER_APP_NAME="monapp"
|
||||||
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
||||||
|
|
||||||
# ─── Chemins (dérivés de DOCKER_APP_NAME et HOSTNAME) ─────────────────────────
|
# ─── Chemins (dérivés de DOCKER_APP_NAME et HOSTNAME) ─────────────────────────
|
||||||
@@ -35,14 +41,16 @@ DB_SERVICE="${DB_SERVICE:-${DOCKER_APP_NAME}_db}"
|
|||||||
DB_CONTAINER="${DB_CONTAINER:-${DOCKER_APP_NAME}_db}"
|
DB_CONTAINER="${DB_CONTAINER:-${DOCKER_APP_NAME}_db}"
|
||||||
|
|
||||||
# ─── Image Docker ─────────────────────────────────────────────────────────────
|
# ─── Image Docker ─────────────────────────────────────────────────────────────
|
||||||
|
# 🔧 À CHANGER pour chaque app
|
||||||
IMAGE_NAME="${IMAGE_NAME:-gitea/gitea}"
|
IMAGE_NAME="${IMAGE_NAME:-gitea/gitea}"
|
||||||
IMAGE_TAG="${IMAGE_TAG:-latest}"
|
IMAGE_TAG="${IMAGE_TAG:-latest}"
|
||||||
|
|
||||||
# ─── Base de données (dérivés de DOCKER_APP_NAME) ─────────────────────────────
|
# ─── Base de données (dérivés de DOCKER_APP_NAME) ─────────────────────────────
|
||||||
DB_NAME="${DB_NAME:-$DOCKER_APP_NAME}"
|
DB_NAME="${DB_NAME:-$DOCKER_APP_NAME}"
|
||||||
DB_USER="${DB_USER:-$DOCKER_APP_NAME}"
|
DB_USER="${DB_USER:-$DOCKER_APP_NAME}"
|
||||||
DB_PASSWORD="${DB_PASSWORD:-chab30}"
|
# 🔧 À CHANGER : mots de passe (doivent correspondre à .env)
|
||||||
DB_ROOT_PASSWORD="${DB_ROOT_PASSWORD:-gitea}"
|
DB_PASSWORD="${DB_PASSWORD:-change_me_in_production}"
|
||||||
|
DB_ROOT_PASSWORD="${DB_ROOT_PASSWORD:-change_me_in_production}"
|
||||||
|
|
||||||
# ─── Volumes Docker - chemins HÔTE (dérivés de DOCKER_APP_NAME) ───────────────
|
# ─── Volumes Docker - chemins HÔTE (dérivés de DOCKER_APP_NAME) ───────────────
|
||||||
# Co-localisés dans /srv/docker/ pour faciliter backup et migration
|
# Co-localisés dans /srv/docker/ pour faciliter backup et migration
|
||||||
@@ -50,6 +58,7 @@ VOLUME_DATA="${VOLUME_DATA:-/srv/docker/$DOCKER_APP_NAME/data}"
|
|||||||
VOLUME_MYSQL="${VOLUME_MYSQL:-/srv/docker/$DOCKER_APP_NAME/mysql}"
|
VOLUME_MYSQL="${VOLUME_MYSQL:-/srv/docker/$DOCKER_APP_NAME/mysql}"
|
||||||
|
|
||||||
# ─── URLs ─────────────────────────────────────────────────────────────────────
|
# ─── URLs ─────────────────────────────────────────────────────────────────────
|
||||||
|
# 🔧 À CHANGER pour chaque app
|
||||||
HEALTH_CHECK_URL="${HEALTH_CHECK_URL:-http://localhost:3000}"
|
HEALTH_CHECK_URL="${HEALTH_CHECK_URL:-http://localhost:3000}"
|
||||||
HEALTH_CHECK_TIMEOUT="${HEALTH_CHECK_TIMEOUT:-30}"
|
HEALTH_CHECK_TIMEOUT="${HEALTH_CHECK_TIMEOUT:-30}"
|
||||||
# Endpoint version (ex: /api/v1/version pour Gitea). Laisser vide pour détection auto.
|
# Endpoint version (ex: /api/v1/version pour Gitea). Laisser vide pour détection auto.
|
||||||
|
|||||||
+18
-5
@@ -14,17 +14,30 @@
|
|||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# ─── Charger la configuration commune ─────────────────────────────────────────
|
# ─── Charger la configuration ────────────────────────────────────────────────
|
||||||
|
# Ordre : 1) config globale (template) → 2) config spécifique à l'app (surcharge)
|
||||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||||
CONFIG_FILE="${CONFIG_FILE:-$SCRIPT_DIR/docker-scripts.conf}"
|
|
||||||
|
|
||||||
if [[ -f "$CONFIG_FILE" ]]; then
|
GLOBAL_CONFIG="${SCRIPT_DIR}/docker-scripts.conf"
|
||||||
|
if [[ -f "$GLOBAL_CONFIG" ]]; then
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "$CONFIG_FILE"
|
source "$GLOBAL_CONFIG"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# ─── Nom de l'application (défaut si pas dans la config) ─────────────────────
|
||||||
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
||||||
|
|
||||||
|
# ─── Configuration locale (après chargement global, permet surcharge env) ────
|
||||||
|
COMPOSE_DIR="${COMPOSE_DIR:-/srv/docker/$DOCKER_APP_NAME}"
|
||||||
|
COMPOSE_FILE="${COMPOSE_FILE:-docker-compose.yml}"
|
||||||
|
|
||||||
|
# Charger la config spécifique à l'application (surcharge la config globale)
|
||||||
|
APP_CONFIG="${COMPOSE_DIR}/docker-scripts.conf"
|
||||||
|
if [[ -f "$APP_CONFIG" ]] && [[ "$APP_CONFIG" != "$GLOBAL_CONFIG" ]]; then
|
||||||
|
# shellcheck source=/dev/null
|
||||||
|
source "$APP_CONFIG"
|
||||||
|
fi
|
||||||
|
|
||||||
# ─── Configuration locale ────────────────────────────────────────────────────
|
# ─── Configuration locale ────────────────────────────────────────────────────
|
||||||
SCRIPTS_DIR="${SCRIPTS_DIR:-/opt/docker-scripts}"
|
SCRIPTS_DIR="${SCRIPTS_DIR:-/opt/docker-scripts}"
|
||||||
CRON_BACKUP_SCHEDULE="${CRON_BACKUP_SCHEDULE:-0 2 * * *}"
|
CRON_BACKUP_SCHEDULE="${CRON_BACKUP_SCHEDULE:-0 2 * * *}"
|
||||||
@@ -211,7 +224,7 @@ do_install() {
|
|||||||
echo ""
|
echo ""
|
||||||
err "Prérequis manquants. Placez les scripts dans $SCRIPTS_DIR/"
|
err "Prérequis manquants. Placez les scripts dans $SCRIPTS_DIR/"
|
||||||
echo ""
|
echo ""
|
||||||
echo " git clone https://git.dracodev.net/Outils/docker-generic-scripts.git $SCRIPTS_DIR"
|
echo " git clone https://git.dracodev.net/Outils/docker-stack-template.git $SCRIPTS_DIR"
|
||||||
echo ""
|
echo ""
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|||||||
+17
-4
@@ -14,17 +14,30 @@
|
|||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# ─── Charger la configuration commune ─────────────────────────────────────────
|
# ─── Charger la configuration ────────────────────────────────────────────────
|
||||||
|
# Ordre : 1) config globale (template) → 2) config spécifique à l'app (surcharge)
|
||||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||||
CONFIG_FILE="${CONFIG_FILE:-$SCRIPT_DIR/docker-scripts.conf}"
|
|
||||||
|
|
||||||
if [[ -f "$CONFIG_FILE" ]]; then
|
GLOBAL_CONFIG="${SCRIPT_DIR}/docker-scripts.conf"
|
||||||
|
if [[ -f "$GLOBAL_CONFIG" ]]; then
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "$CONFIG_FILE"
|
source "$GLOBAL_CONFIG"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# ─── Nom de l'application (défaut si pas dans la config) ─────────────────────
|
||||||
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
||||||
|
|
||||||
|
# ─── Configuration locale (après chargement global, permet surcharge env) ────
|
||||||
|
COMPOSE_DIR="${COMPOSE_DIR:-/srv/docker/$DOCKER_APP_NAME}"
|
||||||
|
COMPOSE_FILE="${COMPOSE_FILE:-docker-compose.yml}"
|
||||||
|
|
||||||
|
# Charger la config spécifique à l'application (surcharge la config globale)
|
||||||
|
APP_CONFIG="${COMPOSE_DIR}/docker-scripts.conf"
|
||||||
|
if [[ -f "$APP_CONFIG" ]] && [[ "$APP_CONFIG" != "$GLOBAL_CONFIG" ]]; then
|
||||||
|
# shellcheck source=/dev/null
|
||||||
|
source "$APP_CONFIG"
|
||||||
|
fi
|
||||||
|
|
||||||
# ─── Couleurs ───────────────────────────────────────────────────────────────
|
# ─── Couleurs ───────────────────────────────────────────────────────────────
|
||||||
RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m'; CYAN='\033[0;36m'; NC='\033[0m'
|
RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m'; CYAN='\033[0;36m'; NC='\033[0m'
|
||||||
ok() { echo -e " ${GREEN}✅${NC} $1"; }
|
ok() { echo -e " ${GREEN}✅${NC} $1"; }
|
||||||
|
|||||||
@@ -20,13 +20,19 @@
|
|||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# ─── Charger la configuration si présente (permet de centraliser tous les défauts) ─
|
# ─── Charger la configuration du template (si présent dans le même dossier) ────
|
||||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||||
if [[ -f "$SCRIPT_DIR/docker-scripts.conf" ]]; then
|
if [[ -f "$SCRIPT_DIR/docker-scripts.conf" ]]; then
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "$SCRIPT_DIR/docker-scripts.conf"
|
source "$SCRIPT_DIR/docker-scripts.conf"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# ─── Configuration (fallbacks après chargement du template) ──────────────────
|
||||||
|
GIT_REPO="${GIT_REPO:-https://git.dracodev.net/Outils/docker-stack-template.git}"
|
||||||
|
SCRIPTS_DIR="${SCRIPTS_DIR:-/opt/docker-scripts}"
|
||||||
|
BRANCH="${GIT_BRANCH:-main}"
|
||||||
|
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
||||||
|
|
||||||
# ─── Couleurs ───────────────────────────────────────────────────────────────
|
# ─── Couleurs ───────────────────────────────────────────────────────────────
|
||||||
RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m'; CYAN='\033[0;36m'; BLUE='\033[0;34m'; NC='\033[0m'
|
RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m'; CYAN='\033[0;36m'; BLUE='\033[0;34m'; NC='\033[0m'
|
||||||
ok() { echo -e " ${GREEN}✅${NC} $1"; }
|
ok() { echo -e " ${GREEN}✅${NC} $1"; }
|
||||||
@@ -35,12 +41,6 @@ err() { echo -e " ${RED}❌${NC} $1"; }
|
|||||||
info() { echo -e " ${CYAN}📋${NC} $1"; }
|
info() { echo -e " ${CYAN}📋${NC} $1"; }
|
||||||
step() { echo -e "\n${BLUE}════════════════════════════════════════════════════════${NC}"; echo -e "${BLUE}🔧 $1${NC}"; echo -e "${BLUE}════════════════════════════════════════════════════════${NC}"; }
|
step() { echo -e "\n${BLUE}════════════════════════════════════════════════════════${NC}"; echo -e "${BLUE}🔧 $1${NC}"; echo -e "${BLUE}════════════════════════════════════════════════════════${NC}"; }
|
||||||
|
|
||||||
# ─── Configuration (fallbacks après chargement de la config) ──────────────────
|
|
||||||
GIT_REPO="${GIT_REPO:-https://git.dracodev.net/Outils/docker-generic-scripts.git}"
|
|
||||||
SCRIPTS_DIR="${SCRIPTS_DIR:-/opt/docker-scripts}"
|
|
||||||
BRANCH="${GIT_BRANCH:-main}"
|
|
||||||
DOCKER_APP_NAME="${DOCKER_APP_NAME:-gitea}"
|
|
||||||
|
|
||||||
# ─── Usage ──────────────────────────────────────────────────────────────────
|
# ─── Usage ──────────────────────────────────────────────────────────────────
|
||||||
usage() {
|
usage() {
|
||||||
cat << EOF
|
cat << EOF
|
||||||
|
|||||||
Reference in New Issue
Block a user