Build a CRUD Rest API in Python using Flask, Postgres, Docker and Docker compose

Sdílet
Vložit
  • čas přidán 5. 09. 2024

Komentáře • 44

  • @ibiawosanya9233
    @ibiawosanya9233 Před rokem +7

    Excellent tutorial, was a total beginner and now I created the Python Flask web application and Dockerized in less than 30 mins.

    • @francescociulla
      @francescociulla  Před rokem +1

      you are welcome! I will post this comment on Twitter soon

  • @francescociulla
    @francescociulla  Před rokem +3

    Find Francesco: francescociulla.com
    0:00 Intro. Architecture and project setup. Dependencies in requirements.txt
    2:40 app file: Flask app, SQLAlchemy app, Model, test route
    6:15: routes and CRUD controllers: Create, Read, Update, Delete
    12:04 Dockerize the Flask application. Dockerfile
    14:08 docker-compose.yml: flask app and Postgres services
    18:00 Test Postgres container. test with Tableplus
    19:45 Build the image (debug) and run the app service. Test endpoints
    23:53 Bug fixing. Final test

  • @matheusmagalhaes7054
    @matheusmagalhaes7054 Před 8 měsíci +2

    A 29-minute video took me two days of study because I had never configured Docker on WSL before. I needed to learn the basics of Flask, Docker, and Postgres to successfully follow the tutorial. The content was amazing, and I managed to complete everything, although with some modifications. The assistance from ChatGPT was crucial in understanding concepts and commands, making the process more easier. Ty boss

  • @rojansapkotaofficial
    @rojansapkotaofficial Před 10 měsíci +3

    Great One!

  • @zaki9815
    @zaki9815 Před rokem +2

    My friend, you can use command "docker compose logs -f" for debugging

    • @francescociulla
      @francescociulla  Před rokem

      I know ;)

    • @zaki9815
      @zaki9815 Před rokem +2

      @@francescociulla You know but you didn’t use it to figure out the internal error, it would be a good addition to use it in your video.
      Keep going my friend

    • @HarmanSingh-pb6ls
      @HarmanSingh-pb6ls Před 2 měsíci

      @@zaki9815 hey man can you help me out with this issue:
      whenever i run docker compose up --build flask_app" or docker compose up flask_db" i get the error as:o configuration file provided: not found

    • @radum_val
      @radum_val Před měsícem

      @@HarmanSingh-pb6ls Check that you are in the proper folder that contains the Dockerfile.

  • @Useroftherisingsun
    @Useroftherisingsun Před 11 měsíci +2

    Thank you sir, you saved me hours!!

  • @mrjmrezende
    @mrjmrezende Před rokem +5

    When I run "docker compose up --build flask_app" I received the message:
    RuntimeError: Working outside of application context.
    This typically means that you attempted to use functionality that needed
    the current application. To solve this, set up an application context
    with app.app_context(). See the documentation for more information.
    Any suggestions to resolve this? Sorry, I'm beginner

    • @francescociulla
      @francescociulla  Před rokem

      are you using docker or just running the flask application?

    • @mihaiion5879
      @mihaiion5879 Před 9 měsíci

      I had the same problem; for me it was because I changed the version from Dockerfile from `python:3.6-slim-buster` to `python:3.8` or even `python:3.10`

    • @LongBoy.0
      @LongBoy.0 Před 8 měsíci

      @@mihaiion5879 I'm on python:3.8-slim-buster and getting the error OP described as well. When I changed back to 3.6 slim-buster, the error was solved

  • @TheIaTaI
    @TheIaTaI Před rokem +2

    Is code suggestions being suggested by an extension?
    Is there a similiar co-pilot in pycharm?

  • @michaeloneill3786
    @michaeloneill3786 Před 6 měsíci +1

    Why did the API return HTML to Postman when you encountered the error? Shouldn't it have returned your generic JSON error message?

  • @GauravSingh-ui3jr
    @GauravSingh-ui3jr Před rokem +1

    API's all the endpoints are working fine, After containerizing it using docker the Database is created as per Table Plus. Test endpoint of the application is working fine. But I am getting error that no table exists. I tried multiple solutions from internet and chatgpt. Please help

    • @francescociulla
      @francescociulla  Před 10 měsíci

      it should be created by the flask app, please trey to follow step by step, running first the db container, then the flask app. works on my side

  • @fargatepb-tb1rl
    @fargatepb-tb1rl Před 4 měsíci

    Why i can't connect to db in postgres, i get this error from table plus:
    connection to server at "localhost" (::1), port 5432 failed: FATAL: la autentificaci�n password fall� para el usuario �postgres�
    I did everything the same until I reached the command: docker compose up -d flask_db
    help please.

    • @francescociulla
      @francescociulla  Před 4 měsíci

      The password for the db is wrong

    • @fargatepb-tb1rl
      @fargatepb-tb1rl Před 4 měsíci

      @@francescociulla the password is postgres , i don’t know why it does not work

    • @fargatepb-tb1rl
      @fargatepb-tb1rl Před 4 měsíci

      @@francescociulla I had to change the port in docker compose, i don't know why with "5432:5432" does not work
      ports:
      - "5433:5432" (that's how it works)
      thankU, nice tutorial

    • @francescociulla
      @francescociulla  Před 4 měsíci +1

      @fargatepb-tb1rl maybe you already have a running instance of postgres running on that port

  • @koudjoura
    @koudjoura Před 8 měsíci

    good video , if i want to create 2 container , one for DB and other for the API, how can i process?

    • @francescociulla
      @francescociulla  Před 8 měsíci +1

      hey, thnak you. this is es exactly what the videos shows, if something is not clear let me know!

    • @koudjoura
      @koudjoura Před 8 měsíci

      @@francescociulla yes i got it , thank you , but other question if I want to use docker to set an application hosting automation platform developed under Framework (python or PHP) how can I process , like what are the steps ?

  • @susmitadey6735
    @susmitadey6735 Před rokem +1

    I'm unable to create users. Help me.

    • @francescociulla
      @francescociulla  Před rokem

      are you doing post requests? was the database created?

    • @susmitadey6735
      @susmitadey6735 Před rokem +1

      @@francescociulla Yes. I'm doing post requests. But the database is not getting created.

    • @francescociulla
      @francescociulla  Před rokem

      @@susmitadey6735 you should have it as soon as you run the flask app. do you get the list of empty users? did you try to just clone the repo and spin up the services?

    • @susmitadey6735
      @susmitadey6735 Před rokem +1

      @@francescociulla I got the list of empty users after running the flask app. I didn't tried to clone the repo. I tried to code along with you in the video.

    • @francescociulla
      @francescociulla  Před rokem

      @@susmitadey6735 if you have the empty users it means the database is there. try again with the post request and check the values

  • @ankitsoni534
    @ankitsoni534 Před 8 měsíci +1

    Hello I need some help,