3.2.1以降、あらゆる操作で500エラーが発生しています。

3.2.3 で、トピックの投稿、編集、投稿の承認などを試みると、次のエラーが発生します。

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

また、次も発生します。

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'

CapRover 上の Bitnami 3.2.3 Discourse インストールを使用しています。
プラグインはありませんが、RO ロケールが有効になっています。

すべてのイメージ(3.2.1、3.2.2、3.3.3)を試しましたが、エラーは同じです。他のすべては正常に機能しているように見え、3.2 アップデート前は正常に機能していました。

必要であれば、完全なスタックトレースを以下に示します。

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'

その後、サポートを求めることができます。ここで支援が必要な場合は、標準的なインストールを行う必要があります。

「いいね!」 3

最初に確認しましたが、インストールガイドが非常に長かったため(CapRoverで利用可能な1クリックインストールを選択しました)。

現在のデータベース/投稿/ユーザーを維持しながら、Bitnamiのインストールを標準のものに置き換える簡単な方法はありますか?

新しいサーバーにバックアップを作成して復元できるはずです。Dashboard.literatecomputing.com は自動化された標準インストールを実行します。無料トライアルグループに参加して無料で利用できます。インストールプロセスには非常に限定的な無料サポートが付いています。

「いいね!」 1

残念ながら、標準インストールは私には機能しません。Discourseイメージ内でDockerが利用可能である必要があるためです。私はすでにCoolifyを使用してコンテナを管理しているので、gitリポジトリをそのコンテナ内にコピーすると、機能させるためにDockerコンテナ内でDockerをインストールする必要が出てきます。

https://hub.docker.com/r/discourse/base を使用して機能させようとしますが、これにはLauncherが必要であり、Docker-ceptionを行わずにDiscourseを完全に隔離されたDockerコンテナにインストールすることはできません。

編集:これも試しましたが、https://github.com/discourse/discourse_docker/blob/master/image/base/Dockerfile、これも機能しません(さらに、ファイルは古く/メンテナンスされていないようです)。

> [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

Dockerイメージ bitnami/discourse:3.0.6 に戻すと 500 エラーが修正され、投稿を再度作成できるようになりました。しばらくはこのバージョンにとどまり、新しいバージョンがリリースされたら再度試してみます。

Discourse が、他のスクリプトやツールを使用せずに簡単にインストールできる、実用的な Docker イメージをすぐに提供してくれることを願っています。

このトピックは閉じることができます。