Live data from Hacker News

Ask HN: Advice for Hosting and Deploying My Side Project

news.ycombinator.com

11–20 of 37 posts

Re: Ask HN: Advice for Hosting and Deploying My Side Project

#11
post #9
post #2

Don't worry about all that security / docker with a MVP, you can deal with that once you know your project is solving a problem and you need to scale. My personal recommendation is a small VM in Google Cloud for the app and another small managed postgres server (backups automated). GCloud is easier to get started with and they automatically migrate your app VM if there are hardware problems. This would run you less t…

Why the boycott? (serious question)

Bezos and Amazon and the way they conduct / carry themselves. I no longer respect him as a leader or role model.

Plus the DX and quality of GCloud is way better than AWS, I just don't get why everyone is so into AWS...

Re: Ask HN: Advice for Hosting and Deploying My Side Project

#12
post #10
post #2

Don't worry about all that security / docker with a MVP, you can deal with that once you know your project is solving a problem and you need to scale. My personal recommendation is a small VM in Google Cloud for the app and another small managed postgres server (backups automated). GCloud is easier to get started with and they automatically migrate your app VM if there are hardware problems. This would run you less t…

This comment hits the nail on the head for me. Pick a cloud provider. Spin up an instance that will be your server. Spin up an instance that will be your DB. Make your DB only listen to your server instance. Make your server instance only listen on port 80/443. As long as your app isn't vulnerable to SQL injection type stuff, that's probably enough security for an MVP, and this kind of set up puts you on the right tr…

Me too :]

Re: Ask HN: Advice for Hosting and Deploying My Side Project

#13
You were on the right track, DigitalOcean is the easiest and at $5/mo for Debian/Ubuntu, it should be sufficient for an MVP.

If you are concerned about security, just follow the "simple" steps below

https://www.digitalocean.com/community/questions/best-practi...

.. it's mostly just typing stuff in a terminal

You can probably skip 10, 11, 14, 15, 16, 17 (in the short run)

If you want to automate this, you can learn Ansible (or Fabric fabfile.org) but that is probably premature

Just make sure you have a backup of everything on your server (nobody is going to take that more seriously than you, specially for customer data)

For scaling, they have some simple Load Balancers now (pick the correct region where it is available) ... used to have to do some DNS-based load balancing before (AWS R53). Again, probably premature but it can be done without too much pain once you get there

Re: Ask HN: Advice for Hosting and Deploying My Side Project

#15
I would have said Heroku. But it doesn't appear its as straight forward for your stack as it is for others. However this looks promising: https://github.com/emk/heroku-buildpack-rust

I would have also suggested https://nanobox.io/ - but their pricing is no longer transparent (used to be pretty cheap). It would also involve dockerizing your app.

As for clever cloud, their Rust support is in beta...

I'd spend a short amount of time on Heroku though, if all goes well that's the best option for an MVP IMO

Re: Ask HN: Advice for Hosting and Deploying My Side Project

#17

You were on the right track, DigitalOcean is the easiest and at $5/mo for Debian/Ubuntu, it should be sufficient for an MVP. If you are concerned about security, just follow the "simple" steps below https://www.digitalocean.com/community/questions/best-practi... .. it's mostly just typing stuff in a terminal You can probably skip 10, 11, 14, 15, 16, 17 (in the short run) If you want to automate this, you can learn An…

This. This makes good sense, at least to try it out. I think DigitalOcean has a 60-day trial like most server providers. Vultr also has similar packages to choose from.

Re: Ask HN: Advice for Hosting and Deploying My Side Project

#18
Might check out AWS Lambda for the Rust backend, I usually use a SAM config to deploy (https://aws.amazon.com/blogs/opensource/rust-runtime-for-aws...).

For the DB, you could then use RDS, a managed postgres service, looks like it supports Postgis: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appen...

Re: Ask HN: Advice for Hosting and Deploying My Side Project

#20
First piece of advice: Relax, don't sweat it too much. I 'hosted' my first side project on a Raspberry PI. My second was on an AWS EC2 instance on the tiny free tier. Nothing wrong with having the db and the app on the same server (in my case Python and Postgres). The projects were mostly for fun though, and I was not worried about scaling or anything like that, but it was quick, cheap and easy.

If you are worried about scaling (which would be a nice problem to have), you can still start out on AWS (or another provider's) free tier, and then just upgrade the instance if you start getting an uptick in use. If you are lucky enough to out grow vertical scaling, then you will have plenty of motivation to figure out the horizontal part. Just carve out an afternoon to sort it out. And if you are really ambitious, try setting your app up on multiple providers. After the first one is up, figuring out the others should be easier (cause they all basically do the same thing), and then you can play around with them and stick with the one you like best. Might cost a little more initially, but could help put your mind at ease.

Regarding security, just make sure you are salt+hashing users passwords. You can worry about the other stuff later. And as others have mentioned, if you do one thing, make sure you backup your database. You can start by just doing it with a daily crontab (or even do it manually if you really need to). It your app crashes, you can always restart it, but if you loose the db, you are hosed.

Also, you might want to consider getting some test users (friends, family) to poke at it before releasing it into the wild. This will help you surface any bugs. If this is your first web app, I would rate your odds of having issues large enough to ruin your launch as: 95% chance due to bugs | 4.5% chance due to scaling issues. | 0.5% chance due to security issues. If a site is getting the HN hug of death, it usually peaks my interest more, and I will bookmark and come back to it. But if its buggy as hell, I loose interest right away.

Post reply on HN