こんにちは、
セキュリティ上の理由(データベースへのアクセスを避けるため)、./launcher bootstrap アプリから [bundle exec rake assets:precompile] プロセスをスキップする必要があります。
web-template を編集してこのプロセスをスキップするように変更しましたが、Discourse の実行には成功しました。しかし、画面は真っ白のままです。以下のようにアセットに問題があるようです。
discourse-details.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
discourse-local-dates.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
discourse-presence.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
discourse-narrative-bot.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
docker_manager.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
lazy-yt.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
poll.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
discourse-presence.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
docker_manager.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
lazy-yt.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
poll.js:1 リソースの読み込みに失敗しました。サーバーは 404 ステータスで応答しました ()
参照:Rake assets:precompile without database
テーマはデータベース内に保存されます(管理 UI で編集されるため)。CSS は PostgreSQL 内に含まれるため、それらをプリコンパイルするにはビルド時にデータベース接続が必要です。
そのため、セキュリティ制限のないゾーンで同じデータベースを使用して「precompile」に成功し、正常に動作することを確認しました。また、データベース内にテーマや CSS が正常に保存されていることも確認しました。
同じデータベースに接続された「non-precompile」サーバーに接続しましたが、CSS、JS、テーマファイルを取得できませんでした。
セキュリティ制限のないゾーンからターゲットゾーンサーバーにアセットファイルをコピー&ペーストしたいと考えています。どのディレクトリパスに貼り付ければよいでしょうか?あるいは他に何か必要なことはありますか?
あるいは.. “precompile” をスキップしてアセット(テーマ、CSS、JS など)を取得する方法はありますか?
お早めにご回答いただけますと幸いです。ありがとうございます。