Deploying Django with Docker Compose

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 พ.ย. 2024

ความคิดเห็น •

  • @gekare
    @gekare ปีที่แล้ว +5

    2.5 hours of pure information and experience. Thank you so much.

    • @LondonAppDeveloper
      @LondonAppDeveloper  ปีที่แล้ว +1

      Thanks for the kind words, happy to hear it was useful.

  • @jasonoesch4652
    @jasonoesch4652 ปีที่แล้ว +1

    THIS. I can finally replace all my hacky docker workarounds and understand what I'm actually doing. Mark, you're the best

  • @ahmetkemalbabacan
    @ahmetkemalbabacan 10 หลายเดือนก่อน

    Still perfect after two years. Great work! The best method I've ever seen about deploying the app to EC2.

  • @ajagaabdulbasit
    @ajagaabdulbasit ปีที่แล้ว

    This is the best tutorial I have seen on deploying docker containers, I applied similar method to deploying on Linode. I learned a lot and I can't wait to get the full course. Great work Mike

  • @janekalam
    @janekalam 2 ปีที่แล้ว +1

    This is by far the best tutorial on Django deployment and the best on Docker. Great explanation on every detail. Thanks so much Mark!

  • @solarsystem1958
    @solarsystem1958 ปีที่แล้ว +4

    Great Thanks for this video! It was very hard to digest for the first deployment, but carefully breaking down and playing around with each step help me a lot to deeper understand what is going on and why I should use a more complex approach

  • @lukeanglin263
    @lukeanglin263 3 ปีที่แล้ว +5

    I am so thankful for your video Mark. You are an excellent, EXCELLENT teacher. One of the best tutorials for CS on TH-cam for any subject! Keep up the wonderful work and I will be praying for your channel to grow even more!

  • @tomaszmakuch
    @tomaszmakuch 2 ปีที่แล้ว

    Great video Mark, keep up the good work! I like the way you slowly explain what you do with no extra unnecessary "decorative" remarks. Hope to have a pint of beer with you sometime in London mate!

  • @GiuseppeDilillo
    @GiuseppeDilillo 11 วันที่ผ่านมา

    this has been quite a journey, thank you so much!

  • @Mrsubset
    @Mrsubset 3 ปีที่แล้ว +1

    Uploaded at the right time. You're a Legend!

  • @idkman9164
    @idkman9164 3 หลายเดือนก่อน

    Following along this video allowed me to host my first ever webpage! Thank you lots!

  • @RR-vi1oz
    @RR-vi1oz 3 ปีที่แล้ว

    This is exactly what I have been looking for. I took your "Rest API" course on Udemy and learned a lot. Thanks again.

  • @rawgov
    @rawgov 3 ปีที่แล้ว +5

    If anyone is facing the PermissionError: [Errno 13] Permission denied: '/vol/web/media' issue, here's the fix:-
    TLDR fix - enter this command in the terminal from inside the root folder - "sudo chmod -R a+rwx ./data"
    Explanation - So, in the docker-compose.yml, because we added ./data/web:/vol/web, under volumes, when we upload a file, it uses the same app user specified in the Dockerfile to write the uploaded file to the ./data folder. So making the /data folder writable fixes the issue

    • @danielsemerjyan513
      @danielsemerjyan513 3 ปีที่แล้ว

      Thx

    • @olipack72
      @olipack72 2 ปีที่แล้ว

      "sudo chmod -R a+rwx ./data" alone didn´t fix the issue in my case. I also had to change the ownership from ROOT to MY_USER by executing "sudo chown -R MY_USER:MY_USER ./data". Only then it worked!

    • @humbertocueva3815
      @humbertocueva3815 2 ปีที่แล้ว

      How can i access to the root folder from the terminal?

    • @rawgov
      @rawgov 2 ปีที่แล้ว

      @@humbertocueva3815 just cd into the path where your project exists. Once you are inside the project folder that's what is called the root folder. Basically which ever folder the .data folder exists.
      If you're a newbie, then just open the project folder in vscode and select new terminal from the top menu and it will launch the terminal directly in the root folder of the project. From there you can directly enter the command. If it doesn't work just type ls -al and make sure that the .data folder exists within the folder you're in.

    • @inyo300
      @inyo300 2 ปีที่แล้ว

      I'm a pretty late, but I wanted to add to this to help future people figure out this problem for themselves. I'm using bash, and for me personally, only changing ownership was necessary . When django automatically creates the ./data/web/ path, the permission types for these directories were the same as all the other directories in the project folder, which for me is 755 (that's rwxr-xr-x for those unacquainted). You can check by "typing ls -al" from the project's root directory. The real problem is that the /data/web directories are given "root" permissions instead of user permissions (if so, it will be indicated by "root root" in the list instead of "[user] [user]" like eveything else.
      So I believe simply starting from the root folder and running "sudo chown -R [user]:[user] data/" (and only this) like in Oliver's post would be all that's necessary for most people, unless they have more restrictive permission types set up for their project directory. If the latter is the case, subsequently running "sudo chmod -R 775 /data" from the project's root directory will suffice.
      If security isn't a concern, you can just use Ragav Y's version of the chmod command in the original message to nuke it from orbit. I just wanted to add that the core issue is likely the owner of the directories, not the permission types, but your mileage may vary.

  • @metalmlover
    @metalmlover 7 หลายเดือนก่อน

    The best tutorial and instructor I've seen on the subject. really amazing

  • @youtalky_com
    @youtalky_com ปีที่แล้ว

    Increadibly proffessional. Blog and the video itself. I am amazed. Thank you so much.

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 หลายเดือนก่อน

      Thanks for your kind words. Glad you found it useful!

  • @Yuyoukyu
    @Yuyoukyu 2 ปีที่แล้ว +3

    Hey Mark, really appreciate for your tutorial. This is the exactly video I was looking! It was so detailed and you explain everything so well. Thank you!❤

    • @LondonAppDeveloper
      @LondonAppDeveloper  2 ปีที่แล้ว

      You're welcome. Thanks for watching and I'm happy you found it useful.

  • @joshuaochia7479
    @joshuaochia7479 3 ปีที่แล้ว +4

    Been trying to find this!! thank you again Mark, you never cease to amaze me and be on the right time ahaahaha

  • @antoniomontero3987
    @antoniomontero3987 3 ปีที่แล้ว

    Yo Mark! I purchased your advanced Django course on Udemy a couple of years ago and it's the best damn course on the subject. Perhaps the only thing missing was how to deploy the project to AWS using Docker containers, so thanks for this video! Keep up the good work, my dude.

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 ปีที่แล้ว

      Hey Antonio, thanks so much, really appreciate that. I'll keep your feedback in mind and hope to create content on it soon!

    • @sandeeps808
      @sandeeps808 2 ปีที่แล้ว

      @@LondonAppDeveloper can i have the link to your udemy course?

  • @holgera7170
    @holgera7170 3 ปีที่แล้ว +1

    Hey Mark, in my opinion one of the best tutorials on youtube. Thank u very much for your detailed explaination. This helped me a lot for our university project. kind greetings from germany

  • @tomha1
    @tomha1 ปีที่แล้ว

    this is a great video. so much useful stuff in it that it taken 5 sittings to complete and over a month

    • @tomha1
      @tomha1 ปีที่แล้ว

      just about completed this now :)
      Most recent working versions are:
      Dockerfile: python:3.11-alpine3.15
      docker-compose.yml / docker-compose-deploy.yml
      - Python 3.11
      - Image: postgres:15-alpine
      Requirements.txt:
      Django==4.2
      psycopg2==2.9.6
      uWSGI==2.0.21

  • @journeytomars4689
    @journeytomars4689 2 ปีที่แล้ว

    Thanks for taking out time to create this tutorial. This video sooo good that I had to purchase the advanced course.

  • @fernandosalazar5800
    @fernandosalazar5800 3 ปีที่แล้ว

    i never write youtube comments but this tutorial was amazing. thank you

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 ปีที่แล้ว +1

      Thanks mate so happy to hear that.

    • @fernandosalazar5800
      @fernandosalazar5800 3 ปีที่แล้ว

      @@LondonAppDeveloper im trying to connect my react app to my EC2 instance but it fails to connect over HTTPS. It works perfectly fine over HTTP. Have been looking for solutions but failed miserably. Im not sure if the docker setup is the issue or not. Any recommendations on where to look?

  • @kayakwinana2133
    @kayakwinana2133 2 ปีที่แล้ว +1

    Very good tutorial! Hope you still take questions. I have only one issue confusing me and this relates to line 23 of the Dockerfile - the app:app. I assume the 2nd app is the added user. What does the first app refer to?

  • @sanjaydhande6573
    @sanjaydhande6573 2 ปีที่แล้ว +2

    Ultimate explanation and the integration. Thanks for such excellent presentation and work.

  • @enricosaccheggiani3192
    @enricosaccheggiani3192 3 ปีที่แล้ว +1

    very well explained the part of wsgi, nginx, static files . Very good

  • @miles2590
    @miles2590 3 ปีที่แล้ว +4

    Thanks for the excellent tutorial Mark. successfully tested the deployment on the production server locally but, have some problem in the development, particularly in the " MEDIA_ROOT='/vol/static/media' ", it gives me Permission denied error and was not mounted on the "/data/web", but when using " MEDIA_ROOT='vol/static/media/' ", there is no error and can saved the media in "app/app/vol/static/media" and was not mounted in "/data/web/". anyway, the production deployment was great locally, haven't tested it yet in the actual production server, thanks Mark. keep it up.

    • @nicolasqueiroga6455
      @nicolasqueiroga6455 2 ปีที่แล้ว

      same problem here

    • @jorgeav527-xyz
      @jorgeav527-xyz 2 ปีที่แล้ว +1

      @@nicolasqueiroga6455 maybe is this: When docker create a data/web to our system it creates with user roots permissions, so when Django app tries to save the file can't. so just change the permissions data/web file to your current user.

  • @warshipwarriors
    @warshipwarriors ปีที่แล้ว

    Awesome tutorial. So many concepts clarified

  • @auwalyahaya1938
    @auwalyahaya1938 2 ปีที่แล้ว +1

    thank You very much for the class but I ran into a problem when running docker-compose build and here is response i got
    Error while fetching server API version: (2, 'CreateFile', 'The system cannot find the file specified.')
    [9676] Failed to execute script docker-compose

  • @enricosaccheggiani3192
    @enricosaccheggiani3192 3 ปีที่แล้ว +3

    Thanks a lot. What i was waiting for

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 ปีที่แล้ว +1

      Great! Let me know what you think.

    • @enricosaccheggiani3192
      @enricosaccheggiani3192 3 ปีที่แล้ว +1

      @@LondonAppDeveloper thanks a lot in advance for this video. I have a complete django project to deploy with a e-commerce, models, and many IOt features . I have tried in many time to deploy but didn't work or worked only launching a runserver into a instance now i am following your tutorial to see whether it works on aws . Thanks for your interesting videos. All the best regards

  • @rawgov
    @rawgov 3 ปีที่แล้ว +1

    I'm trying to deploy this to Heroku and I am stuck on this - Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
    I know I'm supposed to get the port it's served on using an ENV variable that Heroku randomly assigns it, but my understanding of Nginx and docker isn't sufficient enough for me to figure out where to change what. Does anyone have experience with this?

  • @Иван-д6ф6с
    @Иван-д6ф6с 5 หลายเดือนก่อน

    Hi. Why do we need volume 'static-data' in app container (django app) when all of the media requests are served through NGINX? Thanks

  • @Deeredman4
    @Deeredman4 3 ปีที่แล้ว +2

    Can't figure out where to put css and js files... I know it has something to do with vol/web/static but I'm pretty stuck...

    • @veyselaksin
      @veyselaksin 2 ปีที่แล้ว

      Did you find any way?

  • @Max-s6x
    @Max-s6x 2 ปีที่แล้ว

    Thanks a lot for the lessons! you have the best content! I have a question, did we write the “migrate” command in the script, and in the case of development, do we have to execute the “makemigrations” command manually? Or can this one be automated as well? for example to register in “Dickerfile”?

  • @bluzenkk
    @bluzenkk 4 หลายเดือนก่อน

    HI + SOS,
    i'm watching+learning this video in year 2024. I wonder if the workflow has change since then.

  • @giundattimban
    @giundattimban 2 ปีที่แล้ว +1

    could you help to make an example how to add SSL certs to nginx django uwsgi deploy with docker. thankyou so much

  • @shaikbyte
    @shaikbyte 3 ปีที่แล้ว +3

    Hey London App Developer. one day i will meet you in London

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 ปีที่แล้ว +1

      Yeah that would be cool! I'm living on Isle of Dogs right now :D

  • @onyilimba
    @onyilimba ปีที่แล้ว

    Will there be any need for the wait_for_db command if postgresql is defined before the app service? I don't really know docker but from the outputs it seems to run from top to bottom.

  • @Yuyoukyu
    @Yuyoukyu 2 ปีที่แล้ว

    Thank you Mark! Appreciated for the video!

    • @LondonAppDeveloper
      @LondonAppDeveloper  2 ปีที่แล้ว

      Hey Weihao, thanks so much, this is my first Super Thanks :D Really appreciate it.

  • @alessandroscimone5463
    @alessandroscimone5463 2 ปีที่แล้ว

    absolutely fantastic!! and I'm only at minute 43 !!!! gooooo

  • @vinchuli8737
    @vinchuli8737 2 ปีที่แล้ว

    Thank you so much for such a wonderful explanation. Best tutorial

  • @isaachatilima
    @isaachatilima ปีที่แล้ว

    I am stuck making migrations. I have a Mac and use PostgreSQL. I want to use my local machine database, not a Docker image. I cannot connect to that DB. Any help?

  • @proyectolibronube6732
    @proyectolibronube6732 ปีที่แล้ว

    Thanks just suscribed!. Do you always lose the data in database when deploying? how can I make it so that i dont. Just starting and i will like to dockerize a project that is already deployed.

  • @pcslpaul
    @pcslpaul 3 ปีที่แล้ว

    I’ve mashed the subscribe and like buttons! An excellent tutorial - I’ve been wondering about this topic for a while. I’ve learnt an enormous amount. If I get stuck with it I’ll either be doing the full course or contacting you direct for some consulting. Great work, thank you 👍

  • @setiawankarnata4693
    @setiawankarnata4693 3 ปีที่แล้ว +1

    Hi Mark. Excellent videos tutorial. I tried following every step in your video but unfortunately i met error when i run command : docker-compose run --rm app sh -c "django-admin startproject app ." sh: django-admin: not found (Error : 127) I stop the tutorial since i have this issue. Please advise. Thank you.

  • @webdevsumit8311
    @webdevsumit8311 3 ปีที่แล้ว +1

    Now, How can we set ssl certificate to that

  • @jeremyptlt
    @jeremyptlt 3 ปีที่แล้ว +1

    This tutorial is amazing, thank you for the content!

  • @dailypandas
    @dailypandas หลายเดือนก่อน

    This was very helpful!

  • @RuslanSkiraUkraine
    @RuslanSkiraUkraine 3 ปีที่แล้ว +2

    Great tutorial thanks.
    I have a few questions/Notes.
    1. If you use -volumes: ./app:/app Why do you create a directory 'app' and then name your project 'app' and put it inside 'app' directory ? It is so confusing.
    2. where is /py/bin/ directory? inside docker container. It is the default in the 3.9-alphine3.14 image?
    3. I'm using pipenv and do not understand about the PATH env variable. for what you need to change PATH = ...
    4. 59:52 need to add ALLOWED_HOSTS = ["0.0.0.0"]
    5. 1:14:10 PermissionError: [Errno 13] Permission denied: '/vol/web/media' . Answer: need to have permissons on all your local files.
    2:00:00
    db_1 | Error: Database is uninitialized and superuser password is not specified.
    app_1 | Database unavailable, wait 1 second...
    I'm stuck
    on this mistake
    ERROR: unable to select packages:
    postgresql-clien (no such package):
    required by: world[postgresql-clien]
    ERROR: Service 'app' failed to build :
    I was trying to use pipenv
    RUN python -m venv /py && \
    /py/bin/pip install --upgrade pip && \
    /py/bin/pip install pipenv && \
    apk add --update --no-cache postgresql-clien && \
    apk add --update --no-cache --virtual .tmp-deps \
    build-base postgresql-dev musl-dev linux-headers && \
    pipenv shell && \
    apk del .tmp-deps && \
    adduser --disabled-password --no-create-home app && \
    mkdir -p /vol/web/static && \
    mkdir -p /vol/web/media && \
    chown -R app:app /vol && \
    chmod -R 755 /vol && \
    chmod -R +x /scripts
    if occurs problems with pipenv and psql
    pipenv install psycopg2-binary
    After 2 weeks tryings I think I will try to deploy on DigatalOcean. Because I think for new one it is hard.

    • @Shellantar
      @Shellantar 3 ปีที่แล้ว +1

      postgresql-client, not clien

    • @hemantbhatta1821
      @hemantbhatta1821 3 ปีที่แล้ว

      @Pelin Mutanguha Yes I am getting also same error, if you got any solutions please post here.

    • @rawgov
      @rawgov 3 ปีที่แล้ว

      Hey, for the permissions error, what do you mean by "need to have permissons on all your local files. ". It would be nice if you could offer specific steps on how to achieve that.

    • @rawgov
      @rawgov 3 ปีที่แล้ว +5

      If anyone is facing the PermissionError: [Errno 13] Permission denied: '/vol/web/media' issue, here's the fix:-
      TLDR fix - enter this command in the terminal from inside the root folder - "sudo chmod -R a+rwx ./data"
      Explanation - So, in the docker-compose.yml, because we added ./data/web:/vol/web, under volumes, when we upload a file, it uses the same app user specified in the Dockerfile to write the uploaded file to the ./data folder. So making the /data folder writable fixes the issue

    • @shanepolo4442
      @shanepolo4442 2 ปีที่แล้ว +1

      @@rawgov Thanks Raga! That helped me a lot.

  • @liorbm1
    @liorbm1 3 ปีที่แล้ว

    Why not using elastic beanstalk ?

  • @davidprokes840
    @davidprokes840 2 ปีที่แล้ว

    Hi, first of all thank you for this great video! Second, I have a question regarding named volumes. static-data volume is populated by the app service, then this volume is used by the proxy service. Is the volume sourced by the app service and not by the proxy because the proxy depends on the app?

    • @LondonAppDeveloper
      @LondonAppDeveloper  2 ปีที่แล้ว

      The volume is not necessarily sourced by either container. The volume is the volume, and it's shared with the two containers that need the data. Apologies if I misunderstood the question.

  • @stevemulcahy5014
    @stevemulcahy5014 ปีที่แล้ว

    This is a great tutorial, so I definitely liked and subscribed. I'm not a fan of the deployment method (github actions would be nicer), but the way you configured docker for local django development and introducing env variables seems to be the best way I've seen, and I think the nginx container handling static is has its advantages over S3 for smaller sites. But that's the beauty of tutorials, you don't have to adopt everything exactly the same.
    I do have a couple of questions more down to Django development though:
    What I envision with Django for CMS kind of sites is that I want to develop a starting point with my core app locally, but have it so my pages (like "about" and "contact us" kind of pages) are built out without hard coding content, so I'd have a model in the core app called Page. The problem this introduces though is that a database migration won't populate the content from dev to prod. So I'd need a deployment step that backs up the local db and restores it to the prod db.
    Is this an approach you'd take, or would you try to leave database stored content as something that shouldn't be in each environment?
    My other question is down to the wait_for_db command. Is there a reason this is in an app rather than the actual project folder where the settings.py file is located?

  • @pkumarpl
    @pkumarpl 2 ปีที่แล้ว

    Hi, very nice tutorial indeed. I have question regarding applying SSL Certificate on Nginx and expose to port 443. Do you have any working example?

  • @swelanauguste6176
    @swelanauguste6176 3 ปีที่แล้ว +2

    Thanks for the video, let me ask ,you said it not scalable, wouldn't Kubernetes or docker swam help with scalability?

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 ปีที่แล้ว +2

      Yeah absolutely, however they aren't covered in this tutorial which is why I gave the warning of the drawback :D

  • @mediatwinkleTV
    @mediatwinkleTV 3 ปีที่แล้ว

    This is what I'm talking about ! Thank you sir !

  • @nooribrahim4012
    @nooribrahim4012 2 ปีที่แล้ว

    Hello! You didn’t tell how to resolve the issue of Not found, that happened almost in the end of video. please let me know that how to do port mapping in docker-compose-deploy.yml, only admin endpoint is working. i want to extend this website by adding more different thing. please reply and help me with it

  • @vinchuli8737
    @vinchuli8737 2 ปีที่แล้ว

    I LOVED IT YOU SAVED ME A WEEK

  • @nooribrahim4012
    @nooribrahim4012 2 ปีที่แล้ว

    Hi Mark! Please let me know how to do port mapping in order to scale up this website. You just worked on admin url, anything other url doesn’t work. It say thay “Not found”.

  • @apythonprogrammer7877
    @apythonprogrammer7877 2 ปีที่แล้ว

    Why do you recommend using alpine for python? I had so much trouble getting it set up and running correctly with the latest versions of Django and python (4.0.2 and 3.10.2, respectively) that I decided to build without it and it went so much more smoothly, albeit at a larger total size (1.3gb total)

    • @KelDG3
      @KelDG3 2 ปีที่แล้ว

      AFAIK it's mainly because it's smaller

  • @lumsism
    @lumsism 3 ปีที่แล้ว +3

    Thank you very much for this tutorial Mark. I suffered for more than 48 hours trying to solve the permission denied error. I had to add the line ```chown -R user:user /app``` to my Dockerfile to get rid of the error and finally fully deploy my app. I am trying to integrate SSL certificate i will report back on how it goes

    • @alexis3170
      @alexis3170 3 ปีที่แล้ว

      Using similar setup as video, also trying to figure the SSL certificates out. any updates on that? cheers.

  • @brunoresendesantos45
    @brunoresendesantos45 3 ปีที่แล้ว +1

    Great tutorial.
    Could you point me how to enable SSL using this setup with Ngix?

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 ปีที่แล้ว +3

      Great question. I'm going to make another tutorial about SSL. The way to do it is like this:
      1) Procure SSL certificates,
      2) Update NGINX config to add SSL support,
      3) Update the Docker Compose config and security groups to allow access via port 443,
      4) Add a volume to the NGINX service which maps the server directory containing the SSL certs to the directory NGINX is configured to find them.
      It would also be possible to use Let's encrypt by adding another service to the deployment docker compose which runs the agent that updates the certs. I expect this would involve mapping a volume for the certs and a volume for the refresh keys that I believe needs to be served via NGINX. I need to spend some time figuring it out myself before I create a guide on it :)

    • @brunoresendesantos45
      @brunoresendesantos45 3 ปีที่แล้ว +1

      @@LondonAppDeveloper Thank you so much for taking the time to answer. I will give the first option a try. You have no idea how much value you are offering to the community!

    • @near5090
      @near5090 2 ปีที่แล้ว

      hi were you be able to add ssl to this setup? and how you did it if yes?

  • @ndifrekeumoren3548
    @ndifrekeumoren3548 3 ปีที่แล้ว

    Thanks for this wonderful tutorial. I took your course on Django API using docker Udemy, lovely course, but it could use an update. Thanks once again

    • @isaackmata7235
      @isaackmata7235 2 ปีที่แล้ว

      How do you apply for that course brother

    • @isaackmata7235
      @isaackmata7235 2 ปีที่แล้ว

      How do you apply for that course brother

  • @elizabethramirez4133
    @elizabethramirez4133 3 ปีที่แล้ว

    I am having trouble doing the docker compose build, because I have pandas on the requirements, do you happen to know how to solve it? I have been trying to solve it for the whole week and I can't find any solutions. Thank you!

  • @robertkhakimov3262
    @robertkhakimov3262 3 ปีที่แล้ว +2

    Awesome tutorial, I've watched it till the end and everything worked.
    But when I came back to this project after a week and tried to launch it didn't connect me to the website and throw err_connection_timed_out error in browser.
    I've checked and replaced host address with new one which was provided by ec2 (after relaunching instance). What could be wrong?

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 ปีที่แล้ว +2

      Hey mate, could be that the ALLOWED_HOSTS needs to be changed? I didn't think it would re-assign a hostname after re-launch though.

    • @robertkhakimov3262
      @robertkhakimov3262 3 ปีที่แล้ว +1

      ​@@LondonAppDeveloper Thanks for the answer but I've already changed the ALLOWED_HOSTS variable via "vi .env", moreover I tried to use Elastic IP adress to keep IP adress during sessions but that didn't work. I've also tried to create another instance and deploy project there but still the same result... After a while there were some queries in the console but all of them were with "HTTP 400" and they weren't connected with my attempts to reach the website. I've spent a day and a half to find information but there was none.

    • @RuslanSkiraUkraine
      @RuslanSkiraUkraine 3 ปีที่แล้ว +1

      @@robertkhakimov3262 any updates?
      I stuck on the same one. Locally, project is working. Bu on ES2 not.

    • @robertkhakimov3262
      @robertkhakimov3262 3 ปีที่แล้ว +2

      ​@@RuslanSkiraUkraine , I've solved it in a bit odd way. So when you open your ec2 instance in browser you can see the Public IPv4 address and Public IPv4 DNS with buttons "open address". I've always tried to open my website via these buttons but never succeeded (err_connection_timed_out). But then I just copied and pasted IPv4 and all of a sudden everything worked as usual. I think it's because when you press the button it opens website using https protocol but if you copy and paste the actual ip it will be opened with http. Hope this helps.

    • @RuslanSkiraUkraine
      @RuslanSkiraUkraine 3 ปีที่แล้ว

      @@robertkhakimov3262 Thank you for the fast response. I was trying it. It doesn't help me.

  • @ThukuWakogi
    @ThukuWakogi 2 ปีที่แล้ว

    For some reason, the wait_for_db command is stuck in a loop even after postgres is available

  • @weeiwaai3517
    @weeiwaai3517 3 ปีที่แล้ว

    Thank you for the detailed tutorial :) it helped!

  • @TheDragon573
    @TheDragon573 ปีที่แล้ว

    Brilliant tutorial! Thank you!

  • @DEEPESHSINGH10
    @DEEPESHSINGH10 2 ปีที่แล้ว

    How can I add cron jobs in this docker? before docker I used Django-crontab

  • @reabstractor
    @reabstractor 2 ปีที่แล้ว

    Totally fantastic video!!! Lot of thanks!

  • @webdevsumit8311
    @webdevsumit8311 3 ปีที่แล้ว +1

    One of the best Video....

  • @ZactarZero
    @ZactarZero ปีที่แล้ว

    how do you update the migrations in the db?

  • @اناهنا-ب3و
    @اناهنا-ب3و ปีที่แล้ว

    Would you please do all this again but using latest version of Django 4. Thanks

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 หลายเดือนก่อน

      The steps are pretty much the same whether you do it with Django 4 or 5 now. The focus of this video is the Docker part.

  • @oybekyuldashov8269
    @oybekyuldashov8269 ปีที่แล้ว

    how to add SSL certificate

  • @SugarrayCN24
    @SugarrayCN24 ปีที่แล้ว

    thanks for this! I am trying to get streaming request working but couldn't get it working (I tried using proxy_buffering off; in nginx conf). Could you show us how to tweak this to allow streaming request?

  • @bwenjesteven7988
    @bwenjesteven7988 ปีที่แล้ว +1

    Hello London App developer, I have an issue whenever I run the command "docker-compose -f docker-compose-deploy.yml up" I run into th django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please suppl
    y the NAME or OPTIONS['service'] value." Any help rendered I will be so appreciative

  • @edwardmaya3275
    @edwardmaya3275 3 ปีที่แล้ว

    Can you tell about how to handle the "502 Bad Gateway nginx" error. server runs on a digital ocean droplet. I tried to access the server via droplets public ip

  • @matthewcorbett8637
    @matthewcorbett8637 2 ปีที่แล้ว

    Thank you thank you thank you !!!!! This has been great fun ! Had some trouble with the MEDIA_ROOT needing to be 'vol...' and not '/vol...' but aside from that smooth sailing :) Now I can make my best friend a webapp for Xmas !!

    • @LondonAppDeveloper
      @LondonAppDeveloper  2 ปีที่แล้ว

      Great to hear! Hope your friend enjoys their Christmas web app.

  • @njirainidouglas
    @njirainidouglas ปีที่แล้ว

    i am getting an error PermissionError: [Errno 13] Permission denied: '/vol/web/static/admin'
    when doing collect static please help

  • @florasblancas9921
    @florasblancas9921 3 ปีที่แล้ว +1

    Thank you for great tutorial!!

  • @SachinGupta-dn7wt
    @SachinGupta-dn7wt 2 ปีที่แล้ว +1

    Please make a similar video by using Daphne, ASGI & Nginx

    • @jedtrucker
      @jedtrucker 2 ปีที่แล้ว

      And psycopg3

  • @alvaropicatoste2546
    @alvaropicatoste2546 3 ปีที่แล้ว

    Great tutorial. Thanks for sharing.

  • @ayencoscolfield3312
    @ayencoscolfield3312 ปีที่แล้ว

    Thanks man this was really nice👍

  • @devendrasahu3470
    @devendrasahu3470 2 ปีที่แล้ว

    can you please help me to fix this issue :-
    PermissionError at /admin/core/sample/add/
    [Errno 13] Permission denied: '/vol/web/media'

  • @aleksandarpetrovic2632
    @aleksandarpetrovic2632 3 ปีที่แล้ว

    Tnx man for this amazing tutorial

  • @JoeFrixon
    @JoeFrixon 3 ปีที่แล้ว +1

    This tutorial is awesome,

  • @danmbalyo8685
    @danmbalyo8685 2 ปีที่แล้ว

    Hello Mark, thank you for this great course it is short and precise. I would like to request if you have a specific course on handling static files. I will greatly appreciate it.

  • @neetesshhr
    @neetesshhr 2 ปีที่แล้ว +2

    db_1 | 2022-01-20 10:09:47.641 UTC [67] DETAIL: Password does not match for user "approotuser".
    db_1 | Connection matched pg_hba.conf line 99: "host all all all md5"
    db_1 | 2022-01-20 10:09:48.645 UTC [68] FATAL: password authentication failed for user "approotuser"
    db_1 | 2022-01-20 10:09:48.645 UTC [68] DETAIL: Password does not match for user "

    • @vicheanath9412
      @vicheanath9412 2 ปีที่แล้ว

      I got the same issue i think docker-compose can't read .env file but i don't know how to fixed it.

  • @talha_anwar
    @talha_anwar 3 ปีที่แล้ว

    thanks. can you please do ssl par?

  • @canht95
    @canht95 3 ปีที่แล้ว

    I had to set the owner of the /data to the UUID of the docker user during debugging manually to proceed. Did I skip a crucial step?

    • @LondonAppDeveloper
      @LondonAppDeveloper  3 ปีที่แล้ว

      Hmm weird... Are you using Linux? Or running Docker using sudo?

    • @canht95
      @canht95 3 ปีที่แล้ว

      @@LondonAppDeveloper yes, I am on Linux. Forgot to mention that my apologies

  • @mahmoudamr1794
    @mahmoudamr1794 ปีที่แล้ว

    why do need to build postgres-client? i just put the pyscog-binary in requirements.txt?

    • @LondonAppDeveloper
      @LondonAppDeveloper  ปีที่แล้ว

      psycopg2-binrary is not recommended for production as mentioned on their pip page: pypi.org/project/psycopg2-binary/ "The binary package is a practical choice for development and testing but in production it is advised to use the package built from sources.".
      If you need to install it directly for dev only then it's fine, but my philosophy is to use Docker to match both local dev/prod as closely as possible.

  • @himansrivastava
    @himansrivastava 2 ปีที่แล้ว

    Amazing tutorial!

  • @pakoiliev
    @pakoiliev ปีที่แล้ว

    Great video !

  • @fredriksundberg6105
    @fredriksundberg6105 3 ปีที่แล้ว

    This would be even more enlighting when having a Frontend (react etc), Backend (django), DB (Postgres etc) and Proxy (Nginx).

    • @sariyanta
      @sariyanta 3 ปีที่แล้ว

      If I remember correctly, there is a video about setting this all up (except Frontend) in this channel.

    • @bashali6958
      @bashali6958 3 ปีที่แล้ว

      th-cam.com/channels/3RtgbslbAvE-5FFBkSgpig.html I second that. Perhaps Angular frontend that uses the same docker-compose to make it more interesting.

    • @ironrose6
      @ironrose6 ปีที่แล้ว

      @@sariyanta This is that exact video. The other guy wanted mainly a frontend in addition to the other stuff already taught in this video.

  • @hemantbhatta1821
    @hemantbhatta1821 3 ปีที่แล้ว +1

    How can I solve this error? After giving permission to the vol why its giving error?
    PermissionError: [Errno 13] Permission denied: '/vol/web/media'.
    I have followed your video as well as blog.

    • @rawgov
      @rawgov 3 ปีที่แล้ว

      I'm having the same issue. :(

    • @rawgov
      @rawgov 3 ปีที่แล้ว +1

      If anyone is facing the PermissionError: [Errno 13] Permission denied: '/vol/web/media' issue, here's the fix:-
      TLDR fix - enter this command in the terminal from inside the root folder - "sudo chmod -R a+rwx ./data"
      Explanation - So, in the docker-compose.yml, because we added ./data/web:/vol/web, under volumes, when we upload a file, it uses the same app user specified in the Dockerfile to write the uploaded file to the ./data folder. So making the /data folder writable fixes the issue

  • @martrom0
    @martrom0 ปีที่แล้ว

    Excellent ! Thanks a lot !

  • @MiRaje8086
    @MiRaje8086 3 ปีที่แล้ว

    Thanks a lot for this, going to watch through it all and follow along this weekend

  • @jaecheokkim99
    @jaecheokkim99 5 หลายเดือนก่อน

    really helpful thank you!

  • @Frozienas
    @Frozienas 3 ปีที่แล้ว

    Hello! Does DRF deployment have the same steps as this one?

  • @pabloserra89
    @pabloserra89 11 หลายเดือนก่อน

    Hello and, first of all, thanks for the tutorials.
    I was able to follow every step and I have an app working.
    But, I have a problem connecting with the postgres using pgAdmin (that is inside another container).
    I have install the pgAdmin using: docker pull dpage/pgadmin4
    Have anyone had the same problem?

  • @donaldjunior1442
    @donaldjunior1442 3 ปีที่แล้ว

    Just started watching this video but to be honest there isn't any tutorial that shows how to go from a compose file to AWS using ESC fargate.

  • @nidhinp353
    @nidhinp353 2 ปีที่แล้ว

    this is a gem