TL;DR
application.ymlからspring.thymeleaf.*
系のキャッシュ設定を削除することで解決。
application.yml
spring:
- thymeleaf:
- cache: false # アプリリロードなしで変更を反映
- cache-period: 0
- prefix: file:src/main/resources/templates/
stacktrace
Error resolving template "list", template might not exist or might not be accessible by any of the configured Template Resolvers
状況
- 任意のページにアクセスするとThymeleafエラー。テンプレートファイルがないと言われる。
- ローカル環境ではエラーなし
-
gradlew bootBuildImage
で作成したdockerイメージをコンテナ起動した場合のみエラー発生
解決策
- cache周りが怪しかったので、application.ymlから以下を削除
application.yml
spring:
- thymeleaf:
- cache: false # アプリリロードなしで変更を反映
- cache-period: 0
- prefix: file:src/main/resources/templates/
参考: