The 4 best ways to deploy a Django application

Ғылым және технология

In this video I will explain what are the best ways to deploy a Django application.
00:00 - Introduction
00:21 - Installing directly on a server
01:27 - Use Docker-compose to run app directly on Linux server
03:00 - A managed Docker orchestration service
05:00 - Use a server less technology
If you're interested in learning more about how to deploy an app to a Docker orchestration service like AWS ECS, then check out our advanced course: DevOps Deployment Automation with Terraform, AWS and Docker
-Take it on Udemy: www.udemy.com/course/devops-d...
-Take it on Thinkific: londonappdeveloper.thinkific....
OTHER VIDEOS YOU MIGHT LIKE:
○ Prepare a Django app for Deployment using Docker - • Prepare a Django app f...
○ BUILD A BACKEND REST API with Python, Django REST Framework, Django, Vagrant & VirtualBox - • Build a BEGINNER backe...
○ BUILD A BACKEND REST API with Python, Django & Test Driven Development - • Build an ADVANCED back...
○ CREATING A DJANGO PROJECT with Docker - • CREATING A DJANGO PROJ...
○ Setting up PostgreSQL database with a Django Docker application - • Setting up PostgreSQL ...
○ Dockerizing a Django REST Framework Project - • Dockerizing a Django R...

Пікірлер: 92

  • @prowez
    @prowez3 жыл бұрын

    The amount of options available to do things on the internet can be overwhelming. This video is concise and very helpful. You have 1 more subscriber...

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Thanks appreciate that :)

  • @jaecheokkim99
    @jaecheokkim9925 күн бұрын

    Thank you for the explaination after 4 years :)

  • @hasanaydemir420
    @hasanaydemir4204 жыл бұрын

    Thanks a lot. This video maybe saved my life :) Because select way of deploy is very difficult and stresful decision.

  • @LondonAppDeveloper

    @LondonAppDeveloper

    4 жыл бұрын

    Glad it helped!

  • @khmerkitnews2472
    @khmerkitnews24723 жыл бұрын

    Thank you very much for your helpful video.

  • @jesuscarlosacosta4407
    @jesuscarlosacosta44074 жыл бұрын

    Even though you're still a "small" channel, you have potential, I bought your advanced django course and it's one of the best courses I've ever bought

  • @LondonAppDeveloper

    @LondonAppDeveloper

    4 жыл бұрын

    That's so kind, thank you! :)

  • @salaahamin6558

    @salaahamin6558

    2 жыл бұрын

    Could you attach a link to the course. Sounds interesting.

  • @mrmuranga
    @mrmuranga3 жыл бұрын

    always enjoy Marks videos .....will definately be purchasing the deployment course in a few days

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Thanks so much really appreciate that.

  • @parthkrishna3507
    @parthkrishna35073 жыл бұрын

    Now I understood what scale up and scale down means. Thank you ❤️

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Excellent! You're very welcome my friend.

  • @zbigniewsztobryn
    @zbigniewsztobryn3 жыл бұрын

    helped a lot, thanks

  • @sebastianb2092
    @sebastianb20923 жыл бұрын

    Very good video thanks! :)

  • @letsgoooo361
    @letsgoooo3613 жыл бұрын

    this was very helpful. I hate how I just could not understand the deployment landscape before this vidoe. you are awesome thak you very much

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Great to hear! Thanks for watching.

  • @emonymph6911
    @emonymph69112 жыл бұрын

    With option 3. How does the tech stack look? Adding another video with diagrams/flows would be much appreciated. Like do have our backend [django] > still build our own postgreSQL DB with our own schema > containerize it with docker > connect it with (pick 1) [AWS ECS Fargate] or [kubernetes] > pick a cloud provided e.g google cloud (can I choose google cloud if I used AWS ECS in first step?) > pick #servers you want to run... Is this the correct flow or do we skip the postgreSQL step and maybe the final step if #servers to use is chosen automatically. I only trust you Mark with this question you're the devops god!

  • @asisloustau8023
    @asisloustau80234 жыл бұрын

    Thanks, this is super helpful! Do you have any resources for Option 3? I would like to learn how to set up a managed Docker orchestration service!

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Thank you, glad it was helpful. We have an in-depth course that teaches AWS ECS here: londonapp.dev/devops-aws-terraform. We are also planning on creating more free KZread content on the subject in the near future!

  • @nikhilbhardwaj6055
    @nikhilbhardwaj60554 жыл бұрын

    Yes please make drf deployment video on AWS

  • @vishalparkar
    @vishalparkar3 жыл бұрын

    Thanks !

  • @serious6037
    @serious60372 жыл бұрын

    Thank you, this was very helpful.

  • @LondonAppDeveloper

    @LondonAppDeveloper

    10 ай бұрын

    Great to hear, thanks for watching!

  • @rayr268
    @rayr2683 жыл бұрын

    Any good books of systems design out there as well?

  • @peacestar4427
    @peacestar44273 жыл бұрын

    How to change API endpoints while deploying to public when localhost is there in endpoints , eg : 120.x.x.x:8000/to-dos , how to change this when deploying ? Won't it affect the end point for get and post ? Pls help anyone ;

  • @a1994s
    @a1994s Жыл бұрын

    Hi, Please make a video on how to use Docker and kubernetes on the ubuntu located in Hypervisor inorder to deploy the Django Project onto the server.

  • @tradahmedyahia7756
    @tradahmedyahia77562 жыл бұрын

    so clear, thanks

  • @LondonAppDeveloper

    @LondonAppDeveloper

    10 ай бұрын

    Thank you!

  • @KevinTempelx
    @KevinTempelx3 жыл бұрын

    Thank you!

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    You're welcome!

  • @SaadAhmed-pu8wp
    @SaadAhmed-pu8wp2 жыл бұрын

    I have a small django based database application, need to deploy directly on server as this is the requirement of the client. Can you guide or share any video link on how i can do that? App is ready just deployment is remaining

  • @mstardomfinance8389
    @mstardomfinance83893 жыл бұрын

    I use Flask, but your tutorial is still amazing.

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Excellent

  • @pedroduque1407
    @pedroduque14073 жыл бұрын

    Really useful!!! Do you know if using Elastic Beanstalk is a different scenario? Or it is just the same as the second option?

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Thank you! I believe Elastic Beanstalk is most similar to the serverless technology (comparable to Google App Engine).

  • @khmerkitnews2472
    @khmerkitnews24723 жыл бұрын

    In the minute 5:55 you said the severless option is suitable for small app with not many users. So how many users? Is 1000 users a day good to go with this option? Thank you for your great presentation of this topic.

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Thanks for the comment and apologies for the late response! I wouldn't say that serverless is only suitable for a small app with not many users. What I'm saying is that it's usually free (or very very low cost) for a small app with few users... Serverless is a great option for very large applications (I think Google run a lot of their projects on the Google App Engine serverless tech), however it can become costly depending on which services you're using. For example, on GAE you could run a static website that could easily handle 1,000 users per day for < $1 (or free), however if those 1,000 users each transferred 500gb of data through Google Cloud Datastore and 2tb through Google Cloud Storage, that would be much more expensive.

  • @LaureanoPiotti9
    @LaureanoPiotti94 жыл бұрын

    Awesome content

  • @LondonAppDeveloper

    @LondonAppDeveloper

    4 жыл бұрын

    Thank you Laureano.

  • @enricosaccheggiani3192
    @enricosaccheggiani31923 жыл бұрын

    I believe that perhaps the third option is the best . Because with kubernetes you can choose between GCP or AWS and it's scalable .it' s not very easy to implement because we need to know and implement many knowledges

  • @brookewinterford
    @brookewinterford4 жыл бұрын

    Great job babe.

  • @LondonAppDeveloper

    @LondonAppDeveloper

    4 жыл бұрын

    Thank you.

  • @muhmdhsn313
    @muhmdhsn3133 жыл бұрын

    How can I deploying asgi & run https also with nginx & ssl from certbot.

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Not sure off the top of my head.

  • @IllevensKO
    @IllevensKO4 жыл бұрын

    Thanks a lot for this video, looks like a good overview. Buut.. If I'm a beginner developer who wants to have freedom to play with a few live web projects, as well as work for small clients, isn't VPS my best bet ? I'm deploying my first real world project and the client already has a VPS and I'd like to avoid repeating this agony.. So if getting my own VPS is a good idea, how would I automate the deployment process to be able to cookie-cut projects ? No need for full answer, I'd appreciate keyworks/links to look up.

  • @LondonAppDeveloper

    @LondonAppDeveloper

    4 жыл бұрын

    Hey good question. If you deploy the VPS to EC2 you could use Terraform with a user data script (basically a shell script). Otherwise, you could look at using Ansible.

  • @IllevensKO

    @IllevensKO

    4 жыл бұрын

    @@LondonAppDeveloper why not just simple orchestration like dokku? pros and cons? may be a good topic for another video as well

  • @sort_to_see_hidden_comments
    @sort_to_see_hidden_comments2 жыл бұрын

    I need to deploy a django webapp, that contain LFS(audio, videos files, etc) What do you recommend me to do? ( is not an option, I want these files to be stored in my own website)

  • @sort_to_see_hidden_comments

    @sort_to_see_hidden_comments

    2 жыл бұрын

    you forget to mention one important con of google server, and that freedom of speech.

  • @KrishnaManohar8021
    @KrishnaManohar80214 жыл бұрын

    Can u make session tokens u, refresh tokens, JwT, OAuth, etc.. related to security consepts in Django.

  • @LondonAppDeveloper

    @LondonAppDeveloper

    4 жыл бұрын

    Thanks a lot for the feedback, I'll plan to make a video on that in the future!

  • @KrishnaManohar8021

    @KrishnaManohar8021

    4 жыл бұрын

    @@LondonAppDeveloper okay I am waiting for security series. Better to start telegram/whatsapp group.

  • @ninjagotguns
    @ninjagotguns4 жыл бұрын

    What would category python anywhere fall under?

  • @LondonAppDeveloper

    @LondonAppDeveloper

    4 жыл бұрын

    Good point. I haven't used it much but I would probably place that in serverless... Happy to be corrected if someone has used it a lot!

  • @diego.coder26
    @diego.coder264 жыл бұрын

    Django ci/cd gitlab please

  • @troystone3544
    @troystone35443 жыл бұрын

    Great info. How about Pythonanywhere

  • @hansalexander1051
    @hansalexander10513 жыл бұрын

    Is Heroku included in point number 3?

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Perhaps... I've not used it much myself, but it seems like a mix of option 3 (docker orchestration) and 4 (serverless). Really, it's probably closer to 4.

  • @TheMrGreenMoney
    @TheMrGreenMoney3 жыл бұрын

    Any tutorial making option 2?

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Not yet but I'll keep it in mind for future content!

  • @tobbe8287
    @tobbe82874 жыл бұрын

    What about using ansible?

  • @LondonAppDeveloper

    @LondonAppDeveloper

    4 жыл бұрын

    Yeah good point. Ansible would be useful for option 1. It would be better than option 1 without ansible, but still various limitations with it such as single point of failure etc... Of course, it is possible to use Ansible to setup multiple servers with redundancy etc...

  • @heroe1486

    @heroe1486

    2 жыл бұрын

    @@LondonAppDeveloper Option 1 is the less limiting option, you can absolutely replicate most features you have with kubernetees and those which are generally considered standards today on a "bare" Linux server but you have to really know what you're doing and it may be tedious, we weren't at stone age of deployment few years ago. Quite weird you didn't note any pro for it.

  • @Praxss
    @Praxss3 жыл бұрын

    Deployment on heroku will come in which part/way from this 4?

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    That's serverless.

  • @tluanga-ruatpuii-pa
    @tluanga-ruatpuii-pa3 жыл бұрын

    please make a video in serverless django

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    That's going to be our next video! Should be out in a couple of weeks.

  • @tluanga-ruatpuii-pa

    @tluanga-ruatpuii-pa

    3 жыл бұрын

    @@LondonAppDeveloper I am eagerly waiting for that.. esp google serverless deployment

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    @@tluanga-ruatpuii-pa We have this one available already: londonappdeveloper.com/2021/05/03/deploying-django-to-google-app-engine-using-docker/

  • @mayabhaiya6407
    @mayabhaiya64074 жыл бұрын

    Hello my brother my name is Maya and I am from India. I want to get an application tied Mobile Android App!

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Cool!

  • @TheWheelchairGuy
    @TheWheelchairGuy3 жыл бұрын

    Good video, but this is not what I was looking for :D

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Thank you. what were you looking for?

  • @TheWheelchairGuy

    @TheWheelchairGuy

    3 жыл бұрын

    @@LondonAppDeveloper I was looking for how to install django on the web server

  • @mayabhaiya6407
    @mayabhaiya64074 жыл бұрын

    I do not understand English. I know Hindi language. But I ran my mind and I am talking to you through Google Translate.

  • @lhard123l
    @lhard123l4 ай бұрын

    Bro looks like expert in Metaprogramming XDDD

  • @nishantgupta1854
    @nishantgupta18543 жыл бұрын

    is this real

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Yup =)

  • @jacobs388
    @jacobs3883 жыл бұрын

    fishy

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    What's fishy?

  • @EthanVandal
    @EthanVandal3 жыл бұрын

    Option #1 with imaging is the superior option. Once your image is created you can scale up and down infinitely. You have a very limited scope of knowledge. Like the width of a toothpick. Both option #3 & #4 are trash options. Option #2 could work well if you have AI managed services. You need to open your mind about 359º, kid.

  • @LondonAppDeveloper

    @LondonAppDeveloper

    3 жыл бұрын

    Thanks a lot for watching our video and taking the time to give feedback. I've been programming for 20+ years and working in the industry for about 10, and I haven't seen that approach used recently. If I understand correctly, the approach you're talking about involves creating an image of an entire operating system with all the dependencies/code installed, and using it to create as many virtual machines you need to support your load? In my opinion, the issues with this approach are: 1) Very large images which need to be stored and transferred as needed (you need to image an entire OS...) 2) I expect it takes a lot longer to spin up an image compared with running a Docker container 3) You need to re-build these images every time you need to upgrade packages or the OS, which takes a long time Of course there may be examples when this type of process is needed, but I really can't see how this is the "superior" option compared to deploying lightweight docker images using some form of orchestration system?

Келесі