I cannot deploy b/c docker is unable to find my internal dependencies by the local relative path.
I have the following structure:
app_root
|_mix.exs
|_app2/
|_app3/
and app_root/mix.exs has in deps {:app2, path: "./app2"} and app2/mix.exs has in deps {:app3, path: "../app3"}. I don’t know whether the app3 dependency would be resolved b/c it fails to find app2 complaining that app2 isn't available, please ensure the dependency is at "/app2". How do I resolve this?
I’ve tried changing the app to an umbrella project but this is not helpful. I cannot find any information about how to resolve this issue of Docker messing up relative paths. If it builds locally why is Docker not able to resolve the paths correctly?
I’ve given up on making that work. I tried dozens of permutations of Dockerfile commands and mix compilation steps. I ultimately eliminated the need for the assets file by just making a separate module that only exists to provide the 8k item list of strings without needing to read from a separate txt file. I’m still not able to deploy however the errors are completely useless.
It looks like your app is listening on port 4000 but your fly.toml file is configured for port 8080. Update internal_port to 4000 and try again.
You’re right, we need to detect this type of configuration issue and show better errors. Until then we’ve been printing a link to the troubleshooting doc, but it’s easy to miss.
The fly.toml file tells our system which port your app is listening on. Once you get the port right we’ll be able to connect to the app and perform the health checks. Post your fly.toml file if you’re not sure what to change and I can help you with it.
Thanks. I updated the internal_port setting in fly.toml and finally got something approaching a working app. Now there’s a check_origin error I have to correct to keep it from constantly reloading. Do I set that in prod.exs or runtime.exs?
++++
Putting it in runtime.exs worked.