Release for docker: Should I have an esbuild watcher trying to run in a production release for docker?

I’m sure I’m doing something really stupid.
I am trying to run a release a phoenix app in a docker image that I built and I’m getting a lot of these errors:

Function: &Phoenix.Endpoint.Watcher.watch/2
     Args: ["esbuild", {Esbuild, :install_and_run, [:default, ["--sourcemap=inline", "--watch"]]}]

In my runtime.exs I have these watchers:

watchers: [
        # Start the esbuild watcher by calling Esbuild.install_and_run(:default, args)
        esbuild: {Esbuild, :install_and_run, [:default, ~w(--sourcemap=inline --watch)]},
        tailwind: {Tailwind, :install_and_run, [:default, ~w(--watch)]}
]

Should I be specifying some sort of dev-specific/prod-specific details in runtime.exs?
My web search foo is failing me and I can’t figure out what I’ve done wrong, and what I should do.
Phoenix: 1.7, Elixir: 1.15.4, OPT:26
Any input and/or suggestions would be greatly appreciated.

why are the watchers defined in runtime.exs and not dev.exs?

2 Likes

Thanks. :rofl: Good question. I guess the watchers should not be defined in runtime.exs. I also had them in dev.exs ( it sounds like that’s where is belongs).