12 votes

Topic deleted by author

13 comments

  1. [6]
    stu2b50
    (edited )
    Link
    For hosting, I recommend using a "traditional" non-autoscaling VPS. For specific companies, I will recommend either DigitalOcean or Linode. You can use their $5/month plan to test and upgrade as...

    For hosting, I recommend using a "traditional" non-autoscaling VPS. For specific companies, I will recommend either DigitalOcean or Linode. You can use their $5/month plan to test and upgrade as traffic demands. I think these are better for hobbyist (and they are used by real companies!) than something like Azure or AWS because they're simpler and less things can go wrong (you'll never have your AWS key stolen and charged $12,000 because someone was mining bitcoin on your account).

    For OS, I would recommend Ubuntu. I'm sure opinions will vary, Debian based is just what I'm used to.

    For the software stack, since you're using Django, I would recommend using:

    • Nginx as your primary web server - set it up to reverse proxy traffic to Gunicorn

    • Gunicorn as your WSGI server

    • Let's Encrypt certificates - just install and run certbot and you should have HTTPS traffic in no time.

    Edit

    Tutorial on this stack I found from DO a little old but nothing has changed

    https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-ubuntu-16-04


    This is the usual stack I use for small python based projects

    14 votes
    1. unknown user
      Link Parent
      Yup. I accidentally committed an AWS credential to GitHub once, exactly this happened. Except the bill was only $5400...

      you'll never have your AWS key stolen and charged $12,000 because someone was mining bitcoin on your account

      Yup. I accidentally committed an AWS credential to GitHub once, exactly this happened. Except the bill was only $5400...

      7 votes
    2. [3]
      PetitPrince
      Link Parent
      I have this very exact setup and followed this exact tutorial (well, an updated version; they have versions of this tutorial for quite a number of Linux distro) for my very small scale and private...

      I would recommend using

      I have this very exact setup and followed this exact tutorial (well, an updated version; they have versions of this tutorial for quite a number of Linux distro) for my very small scale and private video sharing website. It's working very well.

      Slightly unrelated:

      Let's Encrypt certificates - just install and run certbot and you should have HTTPS traffic in no time.

      Is it just a matter of following this EFF guide or is there another layer of registration required somewhere ? Also, by "hosting", do they mean the actual host-the-thing-that-produce-html (in my case: DigitalOcean) or host-of-the-adress (in my case: Gandi) ?

      2 votes
      1. [2]
        unknown user
        (edited )
        Link Parent
        Regarding the LetsEncrypt thing, yep, that's correct! Just follow their guide. It's really that simple—it's such an amazing service. They even can auto-renew certs for you every 90 days, and email...

        Regarding the LetsEncrypt thing, yep, that's correct! Just follow their guide. It's really that simple—it's such an amazing service. They even can auto-renew certs for you every 90 days, and email you if a cert is about to expire or re-certification failed.

        And @stu2b50 likely means your VPS provider, so DigitalOcean (who I use too! Great company), since I presume you've already configured your nameservers for your domain under the DigitalOcean Networking tab with AAAA and A records.

        6 votes
        1. tomf
          Link Parent
          DO is awesome and their API for LE is great. I have wildcards for all of my domains, too. LE is such a blessing. A few weeks ago I tested a bunch of VPS providers with similar specs to the $5...

          DO is awesome and their API for LE is great. I have wildcards for all of my domains, too. LE is such a blessing.

          A few weeks ago I tested a bunch of VPS providers with similar specs to the $5 plan. I had no idea how easy and clear the DO interface is. It’s not perfect, but at least it’s mostly logical and not stuffed with reused cpanel icons :)

          2 votes
    3. streblo
      Link Parent
      If you want a Debian-based server it’s probably better to go with Debian stable over Ubuntu.

      If you want a Debian-based server it’s probably better to go with Debian stable over Ubuntu.

      2 votes
  2. [2]
    teaearlgraycold
    Link
    I definitely recommend Heroku. Especially if you’re just getting up to speed on new web tech the last thing you want is to also manage your own infrastructure. We use Heroku at work with...

    I definitely recommend Heroku. Especially if you’re just getting up to speed on new web tech the last thing you want is to also manage your own infrastructure. We use Heroku at work with moderately sized applications and it never gives us any trouble. Let me know if you have any specific questions about it.

    7 votes
    1. Omnicrola
      Link Parent
      I'll also recommend Heroku for anything small/hobbyist. It's all AWS under the hood, so it's fairly robust, but it's mostly abstracted away from you. I prefer Java+Spring for backend, but that's...

      I'll also recommend Heroku for anything small/hobbyist. It's all AWS under the hood, so it's fairly robust, but it's mostly abstracted away from you.

      I prefer Java+Spring for backend, but that's mostly personal preference.

      4 votes
  3. pork
    Link
    Netlify is great for small applications--ive never had to scale it so I'm not sure how pricing plays out, but for blogs/cms it has a phenomenal free tier. It's replacing any website I would...

    Netlify is great for small applications--ive never had to scale it so I'm not sure how pricing plays out, but for blogs/cms it has a phenomenal free tier. It's replacing any website I would normally use github pages for. It supports many of the currently popular frameworks like Gatsby, next.js, jekyll etc. I would recommend staying away from Gatsby and using Jekyll or WordPress, the current wave of node.js frameworks is a nightmare to learn for someone fresh to javascript.

    In terms of hosting your own, if you're into that you can dramatically undercut digital ocean prices by checking out smaller local hosting services. I frequent lowendbox.com and currently host things on a server costing me 30$/year.

    4 votes
  4. bkimmel
    Link
    AWS isn't bad. Between the different services in there: EC2 (like renting backspace in the old days) to the more specialized services like SQS, DynamoDB, etc. they've got almost everything you need.

    AWS isn't bad. Between the different services in there: EC2 (like renting backspace in the old days) to the more specialized services like SQS, DynamoDB, etc. they've got almost everything you need.

    3 votes
  5. [2]
    Pistos
    Link
    stu2b50's answer is fine and should serve you well. I'll just add: A few years ago, I stopped making apps with all-server-side frameworks like Rails or Django. These days, I use a backend-frontend...

    stu2b50's answer is fine and should serve you well. I'll just add: A few years ago, I stopped making apps with all-server-side frameworks like Rails or Django. These days, I use a backend-frontend architecture. Backend is a REST API that interacts with the database, frontend is JS a framework. Something for you to consider. There are a variety of tech options for both sides. REST APIs can be done in Ruby, Python, Node.js, or others. JS frameworks include Vue.js, Angular, React, and more. If you're unsure about DB choice, I recommend PostgreSQL. I may be old school, but I second the recommendation to use a VPS instead of AWS, Azure or Docker. I've found VPSes much simpler and more straightforward, with far less frustration and bewilderment.

    3 votes
    1. admicos
      Link Parent
      I wouldn't recommend this. (Unless OP is also ready to learn how to set up and manage server-side-rendering with their framework of choice) Especially for a question-and-answer style site (which...

      These days, I use a backend-frontend architecture. Backend is a REST API that interacts with the database, frontend is JS a framework.

      I wouldn't recommend this. (Unless OP is also ready to learn how to set up and manage server-side-rendering with their framework of choice)

      Especially for a question-and-answer style site (which is what OP seems to be doing), most visits will be read-only, which (at least in my opinion) should always work without JS.

      It will also be a little bit more performant, as the browser is doing less (though that's a pretty small difference if you're using a modern browser and don't mess it up like New Reddit)

      [...] but I second the recommendation to use a VPS instead of AWS, Azure or Docker.

      I agree with what you're saying here, but just to be a little pedantic:

      Both AWS and Azure have VPS offerings (with a pretty neat mark-up because "scalability"), and Docker is just software to be used on top of a regular server. It's kinda useful if you want to organize your stuff (and maybe other things like portability too, that's just how I used it), though for OP's case a single server w/o any Docker/container mess will probably be enough for a while.

      5 votes
  6. mate
    Link
    I use Clever Cloud because I’m French. It’s like Heroku, but better.

    I use Clever Cloud because I’m French.

    It’s like Heroku, but better.

    2 votes