Hello,
I'm looking at trying to build and deploy my application to the cloud but it's almost a nightmare to work out.
I've tried the following:
Quick and easy solution would be brilliant but I do doubt if there is one. I just want to get it online and then to be able to keep pushing code up there. Simple as pie but it seems to be these cloud providers offer a quite complicated in-depth solution which does not seem to fit the bill for me.
Any assistance would be much appreciated :)
If by cloud you mean some auto-scaling solution, I'm afraid I don't really have experience Django experience in that area.
What I've done in the past is use a VPS, and host each Django website through mod_wsgi, which has the advantage that websites have independent Python interpreters with possibly different versions.
I think if I'd have to do it again, I'd like run it all in Docker instead. Containers for memcached, postgres, nginx, maybe celery, logging, django...
I imagine if it runs in Docker, it should be easy to run on most cloud services, as there are almost no requirements of the host software, except running Docker. But I can't say I've tried.
This two are most easiest way to live your project.
just code or with database? linux or mac? manual or automatic? I can give you small script examples based on your need. all you need is rsync / ssh.
since you use django (a script language) this can be done rather efficient without exposing git.
if you want to execute something remote we would need ansible or something similar or you build webhooks which are also very easy. But I am used to maintain complete infrastructures so if you're not interested in really meddling with it I recommend small bash scripts and a fire and forget approach that just syncs your state to a target host.
let me know if that would be enough via PM and I will write you a small custom solution script.
stuff ;)
Eray Erdin
Software Developer
Deployment of Django, I mean anything other than PHP is reallly time consuming. However, once you deploy to a cloud correctly, you usually update the production side with
git pull. At least this is what I do.There are other painless approaches such as Heroku, but I couldn't really get the vibe of it. I mean, once you set up a server, you have the power of the server. Like you could use Celery to do async tasks. However, Heroku uses a different, rather odd approach that I could not properly understand it. You could go in this path, which is easy. However, I could recommend you to set up a server at least once to understand it.