Depuis la version 3.2.1, je reçois des erreurs 500 à chaque action

Avec la version 3.2.3, j’obtiens ceci (lorsque j’essaie de poster un sujet, d’en modifier un, d’approuver des messages, etc.)

2024-07-06T00:39:23.066901838Z NoMethodError (undefined method `trusted_users_can_edit_others?’ for SiteSetting:Class)

J’obtiens également ceci :

24-07-06T00:39:24.067196373Z ActionView::Template::Error (undefined method `escape_uri' for UrlHelper:Class)
2024-07-06T00:39:24.067198898Z lib/plugin/instance.rb:541:in `block in on'
2024-07-06T00:39:24.067201202Z lib/discourse_event.rb:12:in `block in trigger'
2024-07-06T00:39:24.067203586Z lib/discourse_event.rb:12:in `trigger'
2024-07-06T00:39:24.067205881Z lib/pretty_text.rb:484:in `excerpt'
2024-07-06T00:39:24.067208165Z app/models/post.rb:523:in `excerpt'

J’utilise l’installation Bitnami 3.2.3 Discourse sur CapRover.
Je n’ai aucun plugin, mais j’ai la locale RO activée.

J’ai essayé toutes les images (3.2.1, 3.2.2, 3.3.3), mais toujours la même erreur. Tout le reste semble fonctionner correctement, et cela fonctionnait bien avant la mise à jour 3.2.

Voici la trace complète de la pile si nécessaire :

2024-07-06T01:01:05.331159453Z Completed 500 Internal Server Error in 287ms (ActiveRecord: 0.0ms | Allocations: 46431)
2024-07-06T01:01:05.331163440Z NoMethodError (undefined method `escape_uri' for UrlHelper:Class)
2024-07-06T01:01:05.331167227Z lib/plugin/instance.rb:541:in `block in on'
2024-07-06T01:01:05.331170603Z lib/discourse_event.rb:12:in `block in trigger'
2024-07-06T01:01:05.331173679Z lib/discourse_event.rb:12:in `trigger'
2024-07-06T01:01:05.331176945Z lib/pretty_text.rb:484:in `excerpt'
2024-07-06T01:01:05.331180312Z app/models/post.rb:523:in `excerpt'
2024-07-06T01:01:05.331183558Z app/models/post.rb:532:in `excerpt_for_topic'
2024-07-06T01:01:05.331186833Z lib/post_creator.rb:506:in `update_topic_stats'
2024-07-06T01:01:05.331190089Z lib/post_creator.rb:196:in `block in create'
2024-07-06T01:01:05.331193455Z lib/post_creator.rb:390:in `block in transaction'
2024-07-06T01:01:05.331197323Z lib/post_creator.rb:390:in `transaction'
2024-07-06T01:01:05.331200789Z lib/post_creator.rb:188:in `create'
2024-07-06T01:01:05.331203995Z lib/new_post_manager.rb:318:in `perform_create_post'
2024-07-06T01:01:05.331207261Z lib/new_post_manager.rb:252:in `perform'
2024-07-06T01:01:05.331215837Z app/controllers/posts_controller.rb:201:in `create'
2024-07-06T01:01:05.331219554Z app/controllers/application_controller.rb:423:in `block in with_resolved_locale'
2024-07-06T01:01:05.331223071Z app/controllers/application_controller.rb:423:in `with_resolved_locale'
2024-07-06T01:01:05.331226587Z lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
2024-07-06T01:01:05.331229904Z lib/content_security_policy/middleware.rb:12:in `call'
2024-07-06T01:01:05.331233230Z lib/middleware/anonymous_cache.rb:393:in `call'
2024-07-06T01:01:05.331236506Z lib/middleware/gtm_script_nonce_injector.rb:10:in `call'
2024-07-06T01:01:05.331239702Z config/initializers/008-rack-cors.rb:14:in `call'
2024-07-06T01:01:05.331242908Z config/initializers/100-quiet_logger.rb:20:in `call'
2024-07-06T01:01:05.331246204Z config/initializers/100-silence_logger.rb:29:in `call'
2024-07-06T01:01:05.331249290Z lib/middleware/enforce_hostname.rb:24:in `call'
2024-07-06T01:01:05.331252456Z lib/middleware/request_tracker.rb:236:in `call'

Vous pourrez alors leur demander de l’aide. Si vous souhaitez de l’aide ici, vous devez effectuer une installation standard.

3 « J'aime »

Je l’ai vérifié initialement, et le guide d’installation semblait très long (j’ai donc choisi l’installation en 1 clic disponible sur CapRover).

Existe-t-il un moyen facile de remplacer l’installation Bitnami par l’installation standard ? (tout en conservant la base de données/les publications/les utilisateurs actuels) ?

Vous devriez pouvoir faire une sauvegarde et la restaurer sur le nouveau serveur. Dashboard.literatecomputing.com effectuera une installation standard automatisée. Vous pouvez rejoindre le groupe d’essai gratuit et l’utiliser gratuitement, avec un support gratuit très limité pour le processus d’installation.

1 « J'aime »

Malheureusement, l’installation standard ne fonctionne pas pour moi, car elle nécessite que Docker soit disponible dans l’image Discourse. J’utilise déjà Coolify pour gérer mes conteneurs, donc si je copie le dépôt git à l’intérieur de ce conteneur, je devrais installer Docker dans un conteneur Docker pour que cela fonctionne.

J’essaierai de le faire fonctionner en utilisant https://hub.docker.com/r/discourse/base, mais cela nécessite le Launcher, ce qui signifie que je ne peux pas installer complètement Discourse dans un conteneur Docker isolé, sans faire de “Docker-ception”…

EDIT : J’ai aussi essayé d’utiliser ceci, discourse_docker/image/base/Dockerfile at master · discourse/discourse_docker · GitHub, mais cela ne fonctionne pas non plus (en plus, le fichier semble ancien/non maintenu).

> [24/50] RUN /tmp/install-nginx:
53.52 objs/addon/static/ngx_http_brotli_static_module.o \
53.52 objs/ngx_modules.o \
53.52 -Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now -ldl -lpthread -lpthread -lcrypt -L/tmp/ngx_brotli/deps/brotli/c/../out -lbrotlienc -lbrotlicommon -lm -lpcre -lssl -lcrypto -ldl -lpthread -lz \
53.52 -Wl,-E
53.55 /usr/bin/ld: cannot find -lbrotlienc
53.55 /usr/bin/ld: cannot find -lbrotlicommon
53.55 collect2: error: ld returned 1 exit status
53.55 make[1]: *** [objs/Makefile:324: objs/nginx] Error 1
53.55 make[1]: Leaving directory '/tmp/nginx-1.21.0'
53.55 make: *** [Makefile:13: install] Error 2
58 |
59 | ADD install-nginx /tmp/install-nginx
60 | >> RUN /tmp/install-nginx
61 |
62 | RUN apt -y install advancecomp jhead jpegoptim libjpeg-turbo-progs optipng
--------------------
ERROR: failed to solve: process "/bin/sh -c /tmp/install-nginx" did not complete successfully: exit code: 2
1 « J'aime »

Revenir à l’image Docker bitnami/discourse:3.0.6 corrige les erreurs 500, et je peux à nouveau créer des messages. Je resterai sur cette version pendant un certain temps et j’essaierai à nouveau lorsqu’une nouvelle sera publiée.

J’espère que Discourse fournira bientôt une image Docker utilisable, qui pourra être simplement installée, sans utiliser d’autres scripts ou outils.

Vous pouvez clore ce sujet.