Hoegbo

Hoegbo

Elixir Deployment Options

We are starting to wind down our local hosted cloud servers to go to something like heroic or similar.
So in order to decide I would like some input of the awesomeness that is this forum.

Does anyone have any experience of elixir deployment to some of the major names ?
Our applications range from trivial fire and forget apps , to heavy enterprise applications.
What would you chose and why ?


Related thread: Elixir Deployment Options - with GPU

Most Liked Responses

sashaafm

sashaafm

I’ve got some experience in deploying Elixir and Phoenix apps in Digital Ocean and Amazon Web Services. The use case of both is quite different:

  • DO: Very easy and friendly to deploy. Simple options. Cheaper in general than AWS. I’d recommend for small apps.

  • AWS: Has many more options and features. Learning AWS can take a lot of time if you want to use it to its potential but it’s the way to go for large enterprise apps.

jswny

jswny

I prefer to use full-access VPS’s as opposed to things like Gigalixir/Nanobox/Heroku or any of those services. The reason is that even though there’s a lot more setup involved initially, once you have your app setup for deployment it’s usually pretty easy and quick from there on out.

Doing it in this way allows you to easily move from one provider to another if needed. Otherwise, you would have to extract certain deployment fragments from your Gigalixir/Heroku/other service configuration and then set the rest up manually anyway.

Also, I want the fine grained control over each component of my app, while still being able to run multiple apps on the same server, which most of those services don’t give you.

I personally use DigitalOcean as my provider and I use a $20/mo VPS. DO recently changed their pricing to match Linode/Vultr and the other guys so DO’s pricing is actually the same now where it lagged behind before.

I deploy my apps inside Docker only, so that everything is modular and I can add/remove/swap out different components of different apps at will, which is important to me since I have many apps to run on the same server.

If you want to see the comprehensive guide on how I setup my deployments, you can check it out on my forum thread.

P.S. Nothing against Gigalixir at all, they have a wonderful service and it makes everything way easier if you know you don’t need portability later, but this doesn’t really fit my use case, and I like using raw servers personally. Also, jesse is an awesome guy and I see him all over the place in relation to Elixir things so with Gigalixir you are in really good hands.

AstonJ

AstonJ

I’m based in the UK, so look at low-cost European companies such as Leaseweb, Redstation, Hetzner, Rapidswitch etc

If you are in the US there are loads of dedicated server hosts there - I would look at reviews on webhostingtalk.com as I haven’t used a US host myself for a while now, but I know there are lots of low-cost suppliers as bandwidth in the US is cheap.

It really depends on your budget when deciding on what to go for, more usually means better service not necessarily better/bigger server.

In terms of OS - I would use CentOS as it has been rock solid for me for the last 7 years. If hosting multiple sites/email etc, use a control panel such as Webmin - it will make your life much easier :slight_smile:

Where Next?

Popular in Discussions Top

owaisqayum
I have a sample string sentence = "Hello, world ... 123 *** ^%&*())^% %%:>" From this string, I want to only keep the integers, ...
New
Fl4m3Ph03n1x
Background A few days ago I was listening to The future of Elixir from Elixir Talks, with Dave Thomas (@pragdave ) and Brian Mitchell. I...
New
JakeBecker
TL;DR: I’ve just released an implementation of Microsoft’s IDE-independent Language Server Protocol for Elixir. It adds language support ...
1144 53690 245
New
MarioFlach
Hello, I want to share a project I’ve been working on for a while: https://github.com/almightycouch/gitgud Background Some time ago I ...
New
ricklove
I was just introduced to Elixir and Phoenix. I was told about the 2 million websocket test that was done 2 years ago. From my research, t...
New
Crowdhailer
I’ve been hearing much about the new formatter and it’s something I have been keen to try. I find examples buy far the most illuminating...
248 19204 150
New
CharlesO
Erlang :list.nth simple, but 1 - based nth(1, [H|_]) -> H; nth(N, [_|T]) when N > 1 -> nth(N - 1, T). Elixir Enum.at … coo...
New
IVR
Hi all, I’ve seen a number of related threads in the past, but I’d still be very curious to hear an up-to-date opinion on this topic. I...
New
cblavier
Hey there, It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
New
dogweather
I wrote this comment on r/haskell, and it’s not popular there. :wink: But I think I’m on to something… Haskell reminds me of Java, and e...
New

Other popular topics Top

senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New
siddhant3030
Hi, I have to write a raw query for one of my project. But till now I have used ecto queries and don’t have much experience writing raw ...
New
mcarvalho
What is the difference between System.get_env and Application.get_env? For example, what are best practices to use one versus another.
New
greenz1
I have a phoenix application from which a user can download multiple(5-6) files of size 1MB. I couldn’t find anything related to sending ...
New
msaraiva
Surface is an experimental library built on top of Phoenix LiveView and its new LiveComponent API that aims to provide a more declarative...
564 43622 214
New
vegabook
I’m brand new to Phoenix and I have stripped one of the demo applications to the bone. I just want to get an svg up on the screen. Here i...
New
bsollish-terakeet
Credo is smart enough to check for (something like) this: assert length(the_list) == 0 with this response: Checking if an enum is empt...
New
jason.o
In the code below, if the create action is not set to accept “extra_key” as an input, it errors out with a message shown above. Is there ...
New
nsuchy
Hi. I’ve noticed that Windows Powershell has it’s own IEX command and you cannot access Elixir’s IEX due to the conflict. This isn’t a cr...
New
PeterCarter
There are pre-rolled solutions for other frameworks that do work. However, Phoenix does not seem to have these. Have people had good expe...
New

We're in Beta

About us Mission Statement