Why I use docker for my web dev projects

Поделиться
HTML-код
  • Опубликовано: 22 авг 2024

Комментарии • 68

  • @raymondfinton3177
    @raymondfinton3177 Год назад +87

    The amount of technologies developers are expected to know is simply staggering to me at times. Your videos do a great service to anyone struggling to get into this industry. Keep posting!

    • @Alan.livingston
      @Alan.livingston Год назад +9

      My first web dev role was in 2003 and it was much easier for someone to be “full stack”. These days there is so much specialisation I think it’s nigh on impossible to keep up with all. I hire plenty of engineers who try to sell themselves as someone who knows it all but when you get down to brass tacks there will almost always be some part of the stack that they aren’t more than passingly familiar with.

    • @Rust_Rust_Rust
      @Rust_Rust_Rust Год назад +3

      @@Alan.livingston it's possible, just you won't have a life outside work

    • @engageintellect
      @engageintellect Год назад +2

      I feel the same way. 😂 azure pipeline, ec2, code deploy, RDS, ALB, s3, Terraform, nginx, docker…. The never ending list of shit.
      I wish I could just use vercel for everything.

    • @faridguzman91
      @faridguzman91 Год назад +4

      the thing is even after 4 or 5 years into it you'll still be struggling with the newest and greatest tech, because of unjustified demand for it.

    • @dinoscheidt
      @dinoscheidt Год назад

      Yeah. It’s almost like… engineering. Wait.

  • @st-jn2gk
    @st-jn2gk Год назад +8

    you're the most chill, bro-without-trying-to-be-a-bro person I've ever seen on youtube. I hope you keep posting forever. ❤

  • @nowieszco868
    @nowieszco868 Год назад +7

    I really like that you teach with very high quality. Many programming youtubers doesn't care about this and targets only very beginmers. With your tutorials it's possible to find useful things, not only for beginners. Gj man!

  • @lunarmare0
    @lunarmare0 Год назад +10

    It's also worth mentioning that Docker solves the "it works on my machine" problem. Every developer running the same environment is very nice.

    • @error1number404
      @error1number404 Год назад

      in experience, docker solves "it works on windows and linux, and prob on mac", cuz in my developer team one person have mac and he almost one who had problems with incompatiable image cuz of hardware

    • @lunarmare0
      @lunarmare0 Год назад +1

      @@error1number404 I use Mac and have no issues with image compatability. Sounds like inexperience.

  • @FA-sr6lx
    @FA-sr6lx Год назад +1

    Finally a video that explains docker in a way that is easy to understand. I already had a idea but this really made me understand everything better

  • @ericwilson5727
    @ericwilson5727 Год назад +1

    I just started on my first collaborative project and this was the exact video I needed to get started with docker quickly. Thank you!

  • @banoulka
    @banoulka Год назад +1

    I was always putting off trying docker because I thought it was hella complex and required a ton of config files but thank you for this!! Has really opened my eyes about how I can get started easily :)

    • @WebDevCody
      @WebDevCody  Год назад +1

      It’s pretty easy to be honest once you learn the main commands and how a docker file it setup

  • @hunterbertoson156
    @hunterbertoson156 Год назад +2

    Docker is very nice. Once we start dockering our web app at work. It made developing so much easier.

  • @rumonintokyo
    @rumonintokyo Год назад +10

    Been following your channel for sometime. You are one of the few youtubers that cover a wide array of topics for web development and nowadays you even post leetcode problem solving videos. Tbh i really enjoy your format of videos cuz I feel its more towards real life job and what developers experience in their day to day life as an engineer. So I wanted to know what is your learning process like and how do u keep learning so many technologies and keep up to date at a fast pace. Also, I was wondering whether you learnt most of these tech stacks and frameworks from your job or do u usually self-teach yourself to make videos.
    Again, Big Fan!

    • @universe_decoded797
      @universe_decoded797 Год назад

      For me I learn just by doing and from youtube I get knowledge. Challenge yourself by installing new things you’ve never done before, (multiple things at the same time). Can’t find it? Google it. Become good at react or vue and in its environment.
      Today I’ve learned about t3-turbo, its a t3 app with next and a t3 app with native combined, now I wanna use docker containers(because of this video lol) and test my functions with jest.

    • @WebDevCody
      @WebDevCody  Год назад +1

      I just try to read up on new stuff, maybe watch an overview tutorial, or maybe spend 30 minutes playing around with a prototype. A lot of new tech I only know the surface level about and I try to learn enough to be able to know if this is a great new solution, a remake of an existing solution, or a waste of time. My number 1 learning process is to prototype something basic using the library or framework or language. Learn enough to make something basic.

    • @rumonintokyo
      @rumonintokyo Год назад

      @@WebDevCody Thats makes sense, thank you for your advise.

    • @rumonintokyo
      @rumonintokyo Год назад

      @@universe_decoded797 Yea recently I have been exploring the new UI library called Mantine UI and hoping to perhaps find a suitable tech stack along with the new library to make a project. I will check out the t3 stack also cuz am totally new to it.

  • @lukeweston1234
    @lukeweston1234 Год назад

    I love how it takes any surprises away from running on your dev environment vs production

  • @Ca-rp7bv
    @Ca-rp7bv Год назад +1

    TLDR: for my dev db,
    same here XD, great video as always!

  • @levyroth
    @levyroth Год назад +2

    I 100% agree this is the right approach to teach web dev nowadays.

  • @sheldonfourie5959
    @sheldonfourie5959 Год назад

    just love your videos, we need more like this on why

  • @vicyoslinuxofficial2607
    @vicyoslinuxofficial2607 Год назад

    Bruh, I'm new to programing and your simple explanation of a .yaml file was amazing!
    Thank you for the video!

  • @bluursito7241
    @bluursito7241 Год назад

    I recently started to use vagrant for class and i didnt even think about how powerful it was until i copied a few strings and with that 2 machines with a database and web environment were made in less than 1 minute ready to play and i just love this kind of stuff.

    • @WebDevCody
      @WebDevCody  Год назад

      Docker is even faster than vagrant. I used to use vagrant for work years ago and it was super slow to do anything in

  • @techworld3043
    @techworld3043 Год назад

    you are awesome. you are my favourite tech youtuber now

  • @Goyo_MGC
    @Goyo_MGC Год назад +1

    I also really like to use docker in development to share external tools with my team( database, keycloak, mailhog to name a few usefull tools). However on don't find docker as mandatory on side projects. It can get a little hard to find places to run containers for free as it usually use much more ressources. Great Video nonetheless :)

  • @bulelanibotman
    @bulelanibotman Год назад

    so, docker-compose doesn't really need a dockerfile to operate & its a separate utility? wow, thank you! i never knew that

  • @zeph8620
    @zeph8620 Год назад

    Hey Cody, you're a fountain of knowledge and I thank you for your videos.
    I just started learning Docker and I understand how to Dockerize stuff with Dockerfiles, volumes, and Docker compose, but I was also shown that containerizing your entire development setup is also possible.
    This works by making a Volume link to the host's current project directory with the container's current directory to share files and build.
    Is this a good idea for smaller teams? I like your setup because it requires less setup by just starting up your containerized services THEN running npm run dev/start

    • @WebDevCody
      @WebDevCody  Год назад +1

      I find it more productive to keep the services using npm outside of docker, otherwise every command you run related to npm must be ran through a container. If your os is windows or mac but your container is Linux, you’ll run into annoying bugs

  • @tgeorg12
    @tgeorg12 Год назад

    Planetscale works really well too, devs can make a db that branches off another dev db and connect to that. They can discard it and branch off another one again with ease. Prisma push commands work perfectly. It is a paid option though and is hosted externally, but it is still quick and could be worth it for teams. Oh and MySQL only, no PostgreSQL option

  • @Alex.Shalda
    @Alex.Shalda 2 месяца назад

    Thanks! Docker i cool

  • @thegrumpydeveloper
    @thegrumpydeveloper Год назад

    Used to not do this because of compile speed problems with so many node modules but maybe swc/esbuild have made it so that doesn’t matter so much any more?

    • @WebDevCody
      @WebDevCody  Год назад +1

      I usually keep node module outside of docker and just keep any third party databases such as redis, Postgres, s3 local, etc in the containrr

  • @andrewlee7574
    @andrewlee7574 Год назад +1

    Hi, is it necessary to also dockerize the nextjs application together with the postgres image?

    • @WebDevCody
      @WebDevCody  Год назад +2

      No this video was app related to local development, if your trying to deploy a real system I’d suggest using a managed service like netlify, vercel, railway, for deploying next, then find a database service (planetscale, mongo atlas) for running your database. You wouldn’t run a database in a docker file for the most part unless your keen as a system admin, but even so just pay a company to provide and host your stuff.

    • @andrewlee7574
      @andrewlee7574 Год назад

      Thanks, got it!

    • @moon.trance
      @moon.trance Год назад

      ​@@WebDevCody what's wrong with dockerizing whole app for local development. Imagine if you have database, UI tool for database, API, React / any other frontend app, plus you may need to have redis or something for caching and watch changes at shared packages for e.g. Instead of endless installs and npm run dev, you can just do docker-compose up -d and spin up all required services and stuff your app needs for local environment.

  • @abe1
    @abe1 Год назад

    .yaml is preferred over .yml according to the docs

  • @julpitotho1615
    @julpitotho1615 Год назад

    good morning sir!

  • @Vicky-wj7vw
    @Vicky-wj7vw Год назад

    Please make a video on remix js.

  • @frankyb702
    @frankyb702 Год назад

    Dont you need to do sql create statements to get the postgress db working?

    • @WebDevCody
      @WebDevCody  Год назад

      I use prisms which generates migrations and seed data and applies it to the db

  • @Elgnonvis
    @Elgnonvis Год назад

    Good
    How to do it with RAILS

  • @memeproductions4182
    @memeproductions4182 Год назад

    You still have to create the db and tables right?do you do it by entering inside the container?

    • @WebDevCody
      @WebDevCody  Год назад

      Yes, but I point prisma using a url to my postgres container locally. I don’t need to go into the container at all

    • @memeproductions4182
      @memeproductions4182 Год назад

      @@WebDevCody i'm curious, does prima detect the tables the app need aren't there and automatically create them?

    • @WebDevCody
      @WebDevCody  Год назад +1

      @@memeproductions4182 yes, it creates a separate table to track which migrations have ran or not on the table and will run any missing migrations

    • @memeproductions4182
      @memeproductions4182 Год назад

      @@WebDevCody thx!

  • @thanushkanth2257
    @thanushkanth2257 Год назад

    Hey I find your videos are more easy to understand.. I'm at the point to learn Docker.. could you make video about how to use Docker.? in projects like react, node etc. Thanks. :)

  • @al3030
    @al3030 Год назад

    Or you could just use supabase for your postgres database 🤷🏻‍♂️and avoid the overhead of Docker?

    • @WebDevCody
      @WebDevCody  Год назад +1

      That’s a bad idea imo if you have a real team of developers needing their own isolated db. Having 8 separate database one for each developer and requiring a database connection to develop anything is bad

    • @al3030
      @al3030 Год назад

      @@WebDevCody OK for solo projects though 🙂...

  • @alaminsakib6480
    @alaminsakib6480 Год назад

    Hey, quick question, how do u take care of deployment? I mean when u deploy the projects do u deploy the docker image?

    • @WebDevCody
      @WebDevCody  Год назад

      I’d use an existing host like vercel if I’m deploying next. AWS ecs is also good for deploying containers

  • @SeibertSwirl
    @SeibertSwirl Год назад

    Good job babe!

  • @uziboozy4540
    @uziboozy4540 Год назад

    People still use Docker?
    Podman is the future, and so is cri-o and containerd for container runtimes.

  • @Vicky-wj7vw
    @Vicky-wj7vw Год назад

    Nice video 🥰

  • @GordKs_18
    @GordKs_18 Год назад

    😍😍

  • @illegalsmirf
    @illegalsmirf Год назад +1

    Docker is excessively complicated and ends up saving next to nothing in terms of resources. Besides, nobody uses just Docker in production, they use Kubernetes, which takes the complexity to such a high level that no single person can fathom it all.