Grand projet de migration de forum vBulletin

Bonjour,

Je suis en train de trouver un avenir pour un immense forum vBulletin 4 (plus de 12 millions de messages, 100 000 utilisateurs).

J’étudie actuellement Discourse comme option, mais plusieurs questions me viennent à l’esprit, et je ne semble pas trouver de réponses satisfaisantes à ce stade, alors peut-être pourrais-je mieux comprendre en posant les questions directement.

Ce forum appartient à une entreprise, et même s’il ne génère pas de revenus, il reste un lieu important pour sa communauté.

1/ Je ne comprends pas la philosophie derrière le « conteneur unique fait tout ». Pour moi, Docker concerne la séparation des microservices et leur interconnexion via le réseau Docker. J’ai l’habitude d’exécuter des projets multi-conteneurs (jusqu’à 10/12 conteneurs avec redis, postgresql, etc.) en utilisant uniquement les outils Docker.
J’ai lu le sujet ici : Can Discourse ship frequent Docker images that do not need to be bootstrapped? mais je ne suis pas sûr de la justification. Quand je vois tous les fichiers exec & dans les fichiers compose disponibles, je trouve qu’il y a un malentendu entre ce qu’un fichier compose est censé faire et ce qu’un Dockerfile est censé faire.
Les mises à jour de code devraient déclencher de nouvelles constructions d’images Docker qui seraient récupérées, puis exécutées avec compose et des variables d’environnement.
Je vois que quelqu’un a commencé à le faire dans un projet GitHub, mais je suppose que ce n’est pas officiellement pris en charge.
Quelqu’un peut-il me donner une explication claire sur le « pourquoi » de la philosophie actuelle et s’il y a des projets pour l’exécuter comme tant de projets existent sur Internet en 2023.

2/ L’entreprise qui possède le projet utilise Google Workspace pour les e-mails. J’ai utilisé la configuration du relais SMTP de Google pour d’autres projets, et je n’ai pas l’intention d’utiliser autre chose pour pouvoir travailler. J’ai lu différentes choses à ce sujet sur ce forum. Y a-t-il un moyen clair de s’assurer que cela fonctionnera ou y a-t-il une chance que cela ne fonctionne pas (ce qui serait un obstacle majeur pour nous)

3/ J’ai vu qu’il existe des scripts pour exécuter la migration depuis vBulletin (ici : Migrate a vBulletin 4 forum to Discourse), mais cela donne des instructions contradictoires, comme utiliser le guide, mais personnaliser le conteneur avec des fichiers Gem. Quel impact cela a-t-il sur la maintenabilité ou le support ? L’image est-elle toujours prise en charge en cas de problème ?

4/ Intégration avec d’autres outils (principalement Discord). À ce stade, le forum vBulletin a sa propre base de données d’utilisateurs. Existe-t-il un moyen de passer « en douceur » des utilisateurs de la base de données locale aux utilisateurs Discord, par exemple, où nous pourrions faire correspondre les utilisateurs à leur connexion Discord à un moment donné ?

5/ Existe-t-il un guide simple sur les thèmes qui permettrait une transition en douceur, car j’ai beaucoup d’utilisateurs qui seront perdus, et j’aimerais avoir le moins de bruit possible de la migration elle-même…

Je reviendrai probablement avec un autre lot de questions, mais ce sont les principales que j’ai jusqu’à présent.

Merci à tous ceux qui répondront :slight_smile: toutes les contributions sont très appréciées.

C’est pour les personnes qui ne savent pas ce qu’est l’administration système et qui ont besoin d’aide pour le faire fonctionner. Pour un grand forum, vous aurez besoin d’au moins une installation à 2 conteneurs, ou peut-être RDS et Elasticache au lieu de créer votre propre solution.

Si vous voulez lancer avec un Dockerfile, vous devrez utiliser launcher pour construire votre conteneur et trouver un moyen de gérer les migrations de base de données et la précompilation des actifs.

Si vous savez utiliser Google pour les e-mails transactionnels, c’est bien. La plupart des gens ne le savent pas et nous ne voulons pas leur apprendre.

Une migration à grande échelle pour un ancien forum nécessite généralement beaucoup de personnalisation. Que vous exécutiez votre migration dans une instance de développement ou dans une instance de production à l’intérieur de docker est une question de goût. J’avais l’habitude de le faire dans une instance de développement, mais j’exécute toutes mes migrations dans docker de nos jours. Trouver comment installer tous les différents éléments peut être frustrant.

Voulez-vous dire « discord » ou « Discourse » ? Ou peut-être voulez-vous Configure Discord Login for Discourse ?

Quoi que vous fassiez, les gens détestent le changement. Je ne pense pas qu’essayer de faire en sorte que Discourse ressemble à vBulletin aide. Si vous voulez que votre forum se comporte comme vBulletin, alors continuez à l’utiliser. Il existe de nombreux thèmes qui font beaucoup de choses. Il n’y a pas vraiment de guide, sauf Search results for '#theme-component' - Discourse Meta. Vous pouvez y naviguer et rechercher.

Une chose que je pense que quelqu’un a manquée, c’est que bien que la première fois que vous exécutez le script, cela prendra des jours, les exécutions ultérieures sont plus rapides car elles sautent les données déjà importées, donc la dernière exécution ne prendra pas trop de temps.

1 « J'aime »

Bienvenue :wave:

Je ne répondrai qu’à cela car je ne suis pas compétent dans les autres domaines. Je parlerai de la transition en douceur plus loin dans mon message.

En termes de personnalisation, vous pouvez modifier le CSS à partir d’un éditeur intégré, ainsi qu’ajouter du Javascript et utiliser l’API JS spécifique à Discourse. Visuellement, si quelque chose ne vous plaît pas, il suffit de le masquer ou de le modifier.

Le guide officiel des thèmes se trouve ici : Developing Discourse Themes & Theme Components.

Il n’est peut-être pas entièrement à jour car nous mettons actuellement à niveau certains éléments JS à long terme.

Environ 100 % des thèmes, composants de thème et plugins publiés ici sont open source, vous pouvez donc toujours examiner leur code pour créer vos propres solutions.

Un thème est essentiellement un skin avec ou sans fonctionnalités supplémentaires.
Un composant de thème ajoute généralement des fonctionnalités.
Un plugin ajoute des fonctionnalités côté serveur plus approfondies.

Pour mes propres communautés, j’essaie d’utiliser uniquement des personnalisations officielles ou d’autres auteurs ou entreprises de confiance et bien établis comme pavilion. Et bien sûr, des personnalisations personnelles, car je peux les maintenir moi-même.

Les thèmes et les composants de thème peuvent être ajoutés et supprimés à la volée, tandis que l’installation et la désinstallation d’un plugin nécessitent une reconstruction de l’application en ligne de commande (15 à 10 minutes d’indisponibilité).


Quant à une transition en douceur pour une communauté qui atténuerait la confusion ou la colère des utilisateurs, c’est parfois délicat. Évidemment, un score de satisfaction de 100 % est presque impossible.
De plus, certaines communautés sont définitivement plus conservatrices ou plus bruyantes que d’autres et réagiront en conséquence.

Du point de vue de l’utilisateur, je dirais que les critiques les plus récurrentes qui ont été formulées sont :

  • Plus de pagination
    Elle est remplacée par une chronologie interactive. Les deux ont leurs avantages et leurs inconvénients. J’ai parfois entendu des gens ne pas pouvoir s’adapter à ce changement.
    Mon expérience personnelle de 3 migrations de forums de petite et moyenne taille est que personne dans mes communautés n’a eu d’expérience négative avec la chronologie.

  • L’interface est compliquée
    L’interface comporte plus d’éléments qu’auparavant, car des fonctionnalités ont été ajoutées au fil du temps. Le menu de notification s’est agrandi, la barre latérale a été introduite et une fonctionnalité de chat a été ajoutée (qui peut ne pas être nécessaire si vous avez un serveur Discord).
    Nous sommes très conscients de la complexité de l’interface et nous aimerions certainement avoir des parties plus rationalisées.
    Il y a définitivement une courbe d’apprentissage avec Discourse. Bien qu’étant un forum ayant les mêmes fonctionnalités que tout autre logiciel de forum (poster des sujets, poster des réponses/MP, c’est tout…), il diverge à partir de là en termes d’interface et de fonctionnalités ajoutées. Je dirais que la plupart des gens n’ont pas de problème particulier avec cela, mais la communauté de ce forum pourrait être biaisée car la plupart des gens ici connaissent Discourse.
    Lorsque vous êtes habitué à l’interface, vous ne voyez plus le bruit et vous vous concentrez sur les fonctionnalités que vous utilisez réellement, mais je comprends que ce n’est pas exactement votre préoccupation ici car vous vous concentrez sur la migration/transition.

Il existe deux outils intégrés qui aident les gens à comprendre l’interface et les fonctionnalités.

  1. @discobot. C’est un utilisateur bot interactif avec lequel nous pouvons interagir, et il nous apprend à utiliser certaines fonctionnalités de discussion.

  2. Conseils pour les nouveaux utilisateurs. Lorsque vous vous inscrivez, des infobulles apparaîtront dans l’interface pour expliquer différentes parties. Vous pouvez les désactiver à tout moment à partir de n’importe quelle infobulle et vous y réinscrire à partir de vos préférences utilisateur.

Du point de vue de l’administrateur, ce serait :

  • Il y a trop de paramètres
    Oui, il y a beaucoup d’options dans Discourse. La configuration minutieuse du forum prendra des heures et nécessitera probablement des ajustements jusqu’à satisfaction. La bonne chose est que lorsque c’est fait, vous revenez rarement aux réglages.
    Nous savons que de nombreux paramètres peuvent être intimidants et rendre parfois difficile la recherche de quelque chose. Il y a une marge d’amélioration.

Enfin, vous pouvez utiliser le bac à sable utilisateur sur try.discourse.org.
Il n’y a pas de bac à sable administrateur. Lorsque je veux expérimenter des choses au niveau de l’administrateur, je configure généralement un serveur Hetzner à faible spécification (facturé à l’heure) sur lequel j’installe Discourse pendant quelques heures ou jours.

3 « J'aime »