esup-multi

Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Le CMS se lance avec Docker. Par défaut, la configuration proposée utilise PostgreSQL, mais il est aussi possible d'utiliser MySQL (voir la section MySQL ci-dessous).

  1. Se rendre Rendez-vous dans le dossier dossier env/local/docker/directus Modifiez les variables d'environnement suivantes directus, le déploiement est décrit dans le fichier docker-compose.yml (optionnel pour une installation locale, passez à l'étape 3) :
    1. dans le conteneur directus-db  :
      1. POSTGRES_PASSWORD 
    2. dans le conteneur directus  :
      1. KEY 
      2. SECRET 
      3. ADMIN_EMAIL  (identifiant de l'admin sur la page d'administration du CMS)
      4. ADMIN_PASSWORD  (mot de passe de l'admin sur la page d'administration du CMS)
      5. DB_PASSWORD  (doit correspondre à POSTGRES_PASSWORD du conteneur directus-db)
  2. Lancer Directus :
    Bloc de code
    languagebash
    $ docker compose up --build -d
  3. Le CMS sera accessible sur http://localhost:8055, connectez-vous avec les identifiants renseignés plus tôt (ADMIN_EMAIL et ADMIN_PASSWORD).
  4. Dans Settings > Project Settings, passez le CMS en français (optionnel, mais les explications suivantes se font avec l'interface en français).

Import

  1. Pour importer les collections Lancez Directus :
    Bloc de code
    languagebash
    $ docker compose up exec directus npx directus schema apply --build -d
  2. Le CMS sera accessible sur http://localhost:8055 (à moins que vous ayez modifié la configuration), connectez-vous avec les identifiants renseignés plus tôt (ADMIN_EMAIL et ADMIN_PASSWORD).
  3. Dans Settings > Project Settings, passez le CMS en français (optionnel, mais les explications suivantes se font avec l'interface en français).

MySQL

Pour utiliser MySQL, remplacer dans le fichier docker-compose.yml, la config de directus-db  :

Bloc de code
languagediff
  directus-db:
-    image: postgis/postgis:14-master
+    image: mysql:latest
    ports:
-      - "5432:5432"
+      - "3306:3306"
    # Uncomment to persist data on your local storage
    # volumes:
-    #   - './postgres-data:/var/lib/postgresql/data'
+    #   - './mysql-data:/var/lib/mysql'
    networks:
      - directus
+    command: mysqld --default-authentication-plugin=mysql_native_password
    environment:
-      POSTGRES_USER: 'directus'
-      POSTGRES_PASSWORD: 'directus'
-      POSTGRES_DB: 'directus'
+      MYSQL_USER: 'directus'
+      MYSQL_PASSWORD: 'directus'
+      MYSQL_DATABASE: 'directus'
+      MYSQL_ROOT_PASSWORD: 'directus'

Et dans l'environnement du conteneur directus  :

Bloc de code
languagediff
-      DB_CLIENT: 'pg'
+      DB_CLIENT: 'mysql'
      DB_HOST: 'directus-db'
-      DB_PORT: '5432'
+      DB_PORT: '3306'
      DB_DATABASE: 'directus'
      DB_USER: 'directus'
      DB_PASSWORD: 'directus'

Import

  1. Pour importer les collections :
    Bloc de code
    languagebash
    $ docker compose exec directus npx directus schema apply --yes ./snapshot/snapshot.yaml
  2. Redémarrez le conteneur Docker de Directus pour que l'import soit bien pris en compte.
  3. Dans Réglages > Modèles de données, pour la collection Languages, sélectionnez Voir le contenu.
  4. Sélectionnez le fichier des langues (languages xxxxx.json) et importez-le.
  5. Pour chaque collection visible dans le panneau latéral (dans l'onglet Contenu), importez le contenu.
  6. Saisir les informations demandées dans Contact US et Login (pour plus d'explication consultez la page suivante
  7. Créez un dossier dans l'onglet Bibliothèque de fichiers, « important-news-folder ».
  8. Dans Réglages > Modèles de données > important-news > image > Interface, sélectionnez le dossier de destination que l'on vient de créer.
    Image Removed

Permissions

  1. yes ./snapshot/snapshot.yaml
  2. Redémarrez le conteneur Docker de Directus pour que l'import soit bien pris en compte.
  3. Dans Réglages > Modèles de données, pour la collection Languages, sélectionnez Voir le contenu.
  4. Sélectionnez le fichier des langues (languages.json) et importez-le.
  5. Pour chaque collection visible dans le panneau latéral (dans l'onglet Contenu), importez le contenu.
  6. Saisir les informations demandées dans Contact US et Login (pour plus d'explication consultez la page suivante

Permissions

  1. Dans Réglages > Rôles et autorisations > Role Administrator > Membres avec ce rôle > Admin User
  2. Si vous êtes sur une installation locale, vous pouvez directement passer à l'étape 6.
  3. Nous allons ajouter un rôle pour notre application, rendez-vous dans Réglages > Rôles et autorisations.
  4. Créer un nouveau rôle intitulé "Application" par exemple. Le champ "Accès à l'application" indique si les utilisateurs avec ce rôle pourront accéder à l'interface du CMS ou non. Ici, on peut décocher les deux options.
    Image Removed
  5. Donnez les permissions de lecture à toutes les collections (pas les collections système).
    Image Removed
  6. Créez un nouvel utilisateur pour ce rôle (donnez uniquement un nom).
  7. Générez un token pour l'utilisateur que l'on vient de créer (en local : le compte admin). Gardez-le, vous en aurez besoin pour la configuration du backend.Rendez visible le dossier des images d'important-news (créé préalablement) au rôle Public comme indiqué sur les captures d'écran ci-dessous :
    Image RemovedImage Removed

Image Added

pour plus d'explication consultez la page suivante 

Le Backend

Avertissement
titlePrérequis

Nécessite d'avoir Docker sur la machine de dev, notamment pour disposer des briques suivantes en local : 

  • Instance de Directus (cf. section Le CMS Headless)
  • Une base MongoDB
  • Serveur Nats
  • Base Redis

...