Files
emdash/README.md
T

2.6 KiB

EmDash Blog - Docker Self-Hosted

CMS EmDash (Astro + SQLite) deploye en Docker sur QNAP.

Pre-requis

  • Docker + Docker Compose
  • Network swag_lan existant
  • Repertoires crees sur le QNAP :
mkdir -p /share/ZFS24_DATA/docker/emdash/data
mkdir -p /share/ZFS24_DATA/docker/emdash/uploads

Deploiement

1. Build et lancement

docker compose up -d --build

2. Generer les secrets (optionnel mais recommande)

# Sur une machine avec Node.js
npx emdash auth secret
# Copier la valeur dans docker-compose.yml pour EMDASH_AUTH_SECRET
npx emdash auth secret
# Copier la valeur pour EMDASH_PREVIEW_SECRET

Puis decommenter les lignes correspondantes dans docker-compose.yml et relancer :

docker compose up -d

3. Creer le premier compte admin

  1. Ouvrir http://<IP-QNAP>:4321/_emdash/admin
  2. L'assistant de configuration apparait au premier lancement
  3. Renseigner le titre du site et le tagline
  4. Creer le compte administrateur avec un email
  5. Enregistrer un passkey (WebAuthn) via le navigateur

Note

: L'authentification utilise WebAuthn (passkeys). Un navigateur moderne avec support biometrique ou cle de securite est requis.

URL d'acces

Service URL
Site public http://<IP-QNAP>:4321
Admin http://<IP-QNAP>:4321/_emdash/admin

Avec un reverse proxy SWAG, configurer le subdomain/subpath pour pointer sur emdash:4321.

Variables d'environnement

Variable Default Description
HOST 0.0.0.0 Adresse de bind
PORT 4321 Port d'ecoute
DATABASE_PATH /data/emdash.db Chemin du fichier SQLite
UPLOAD_DIR /uploads Repertoire des fichiers media
EMDASH_AUTH_SECRET (auto) Secret pour les sessions
EMDASH_PREVIEW_SECRET (auto) Secret pour les previews
TZ Europe/Paris Timezone

Volumes

Container QNAP Usage
/data /share/ZFS24_DATA/docker/emdash/data Base SQLite
/uploads /share/ZFS24_DATA/docker/emdash/uploads Fichiers media uploades

Maintenance

# Voir les logs
docker compose logs -f emdash

# Redemarrer
docker compose restart emdash

# Rebuild apres mise a jour
docker compose up -d --build

# Backup de la base
cp /share/ZFS24_DATA/docker/emdash/data/emdash.db /path/to/backup/

Stack technique

  • CMS : EmDash v0.1.0
  • Framework : Astro 6 (SSR standalone)
  • Runtime : Node.js 22 LTS
  • Database : SQLite (better-sqlite3)
  • Auth : WebAuthn (passkeys)