Mix Release on different OS?

Was trying to figure how to deploy a project and came across this.
My OS is windows, but I want to deploy in EC2 using Ubuntu, does this mean I can’t use mix release at all and have to do everything manually?

Once a release is assembled, it can be packaged and deployed to a target, as long as the target runs on the same operating system (OS) distribution and version as the machine running the mix release command.

https://hexdocs.pm/mix/1.15/Mix.Tasks.Release.html

You can use a VM, docker or CI to build it. Ideally you would be developing on the same OS that you’re using in prod.

Any reason you aren’t developing in WSL?

Didn’t think it would be an issue to be honest. I assumed people develop on different platforms in the real world so assumed deployment across different OS wouldn’t be an issue.

I’ve spent about 6 - 8months or so building a project and have made 0 progress in the last week or so trying to deploy it lol. Have no idea why deployment has so many different stages that all seem to be done completely differently by different people. Can’t find a single guide that I can get through.

Think its probably time to just call it quits. Beyond tired of trying.

Thanks for the help and sorry for the mini rant.

Once you do a mix release in a local VM that’s the same OS as your VPS, you can just scp or rsync the release to it and just start it there with one command.

I get how one can be burned out after trying for a while but you should have come to us sooner, we would have fixed ya. :smiley:

2 Likes