No video

When would you want to use docker and docker-compose on your projects?

  Рет қаралды 33,117

Web Dev Cody

Web Dev Cody

Күн бұрын

Пікірлер: 71
@ToddDunning
@ToddDunning Жыл бұрын
You do an uncannily good job at making frighteningly complicated stuff simple, and just as importantly giving it real context so we know where the hell to put it.
@LordFalkord
@LordFalkord Жыл бұрын
I used docker/docker-compose at work for like 2 years. The project i was working on was quite big with a lot of services, so I had quite a lot of containers open. The main issue I had was about performance. When you use Chrome, VSCode, a hot-reload React service + all of your docker containers (which run under a virtual machine under the hood), my Macbook Pro was struggling so much. I just removed docker, and oh my god my macbook is so fast now. I finally prefer managing my own tools versions (with brew, nvm etc...) rather than having a slow Macbook Pro. If I had a Linux machine I would still use docker tho (as it doesn't require a VM) !
@tacowilco7515
@tacowilco7515 6 ай бұрын
We started to use docker compose on our project and this simplified our life so much. Thank you for this overview, you are always on point, no blah blah blah.
@JegErN0rsk
@JegErN0rsk Жыл бұрын
As an aspiring developer these videos are invaluable. Thanks!
@Pyrospower
@Pyrospower Жыл бұрын
Nice video! I haven't really dug into it yet, but I think using multi-stage builds might be interesting to reduce complexity and optimize the Dockerfile
@WebDevCody
@WebDevCody Жыл бұрын
I’ll have to look into that
@karstr770
@karstr770 29 күн бұрын
7:13 It does not ignore the files. Due to the first volume mount, it will copy over everything from the host to the container, including your node_modules, but it will overwrite /home/app/node_modules in the container because you create anonymous volume on that path. Anyway, I don't think this is the correct way to do it. You should create .dockerignore to tell which files you don't want to be copied to the container. --- I like that multiple services can be started easily through Docker Compose, but my main issue with it is that in order for static analysis to work properly in the IDE, you still need to install packages (e.g. node_modules, .venv) in your host machine, which to some extent defeats the purpose of containerization. Bind mounting them to host, as was mentioned in the video, is not a good solution, because of potential differences between versions and operating systems. Of course, one can work without static analysis, but it helps immensely. Yes, I am aware of Dev Containers in VS Code, but it feels restrictive to bind the project to specific IDE. Anyway, does anyone know a solution for this?
@neontuts5637
@neontuts5637 Жыл бұрын
Thanks for sharing. Docker is on my learning list this year.
@eshw23
@eshw23 Жыл бұрын
Thanks a lot for responding to everyone in the comments including me Cody, helps us out a lot when you give back to the community to help us grow
@WebDevCody
@WebDevCody Жыл бұрын
sure thing!
@devippo
@devippo Жыл бұрын
Thanks Web Dev Cody. I'm using Docker more often lately but only when I deploy. The tricky part I'm trying to wrap my head around is when we develop locally is the typescript building and updating the docker image with each file save? Thanks so much for all your videos.
@Yusuf-ok5rk
@Yusuf-ok5rk 7 ай бұрын
thank you for the content cody. your videos really give a good perspective when i need it. it is like having a senior developer that i can consult to, or maybe better than that.
@hunterbidenafterlife
@hunterbidenafterlife 8 ай бұрын
been learning docker and it's pretty cool, especially when using docker-compose, the only real thing I dont like is dealing with when your node_modules change or update, usually involves deleting the node_module volume and container and rebuilding, not terrible but definitely an annoying flow breaker if your dependencies change a lot.
@johnpaulpineda2476
@johnpaulpineda2476 Жыл бұрын
What if, you create a complete next13 or t3 app with docker and docker-compose??? That would be a banger tho.
@SeibertSwirl
@SeibertSwirl Жыл бұрын
Good job love ❤
@gilneyn.mathias1134
@gilneyn.mathias1134 Жыл бұрын
I'm playing around with Spring Boot + Microservices and i'm using docker compose too... It was a fucking pain in the ass to set everything up, but it is really satisfying to do 1 command and get 19 containers up and running 😅
@ljnoble5171
@ljnoble5171 Жыл бұрын
When would you use `docker-compose` vs `docker compose` please?
@bulelanibotman
@bulelanibotman Жыл бұрын
awesome video! just clear and straight forward explanation & easy to understand
@MarkDeibert
@MarkDeibert Жыл бұрын
Great vid, exactly what I was looking for. Trying package up my app like this with Docker. Mainly for easier deployment. Side question: Is that gorgeous theme Catppuccin?
@MarkDeibert
@MarkDeibert Жыл бұрын
Oh Ok I see in comments below, not Catppuccin. I def like it. It's Catppuccin'ish 🙂
@ArynKr
@ArynKr Жыл бұрын
You made it really simple to understand. Great video. 🔥
@masoiaXL
@masoiaXL Жыл бұрын
Cool video! Did you look into the `networks` property of a service? That makes it possible to sort of group services together that can only communicate with each other if they are in the same network. Could apply to your mongo db services.
@seblaise94
@seblaise94 Жыл бұрын
Elite🎉🎉, Real world dev experience 🙌🏾
@mrirror2277
@mrirror2277 Жыл бұрын
Hi, great video! Say for a completely new dev with a new-ish machine (like an almost no tooling Windows machine), does the dev only need to install Docker, clone the repo and that's it? No other local dependencies needed.
@WebDevCody
@WebDevCody Жыл бұрын
That’s the goal yes, it’s hard to get perfect sometimes
@mrirror2277
@mrirror2277 Жыл бұрын
@@WebDevCody I see, that's really cool! (well assuming everything goes well hahah..) Keep up the good stuffs :)
@igboanugwocollins4452
@igboanugwocollins4452 Жыл бұрын
Thank you very much!
@StellarStoic
@StellarStoic 7 ай бұрын
As I thought, it's not easy :) I was so happy building a web app in local environmental until I needed some help and friend told me just send me a docker file and now I get to realization if you stop being a solo dev you obviously need to learn docker or whatever the other containers are called. I feel like at the beginning of my coding journey. I'm clueless 😂
@TheSimslash
@TheSimslash Жыл бұрын
You don't have HMR with this architecture do you ? Saving src files from your back/ui won't refresh everything will it ? Will you have to spin up everything again or is there a binding between local files and docker files or something ? If so dev experience might not be best if you have to wait a lot of time to to refresh with your code
@WebDevCody
@WebDevCody Жыл бұрын
You can use volume mounts so when you edit files in vscode it’ll refresh
@mrbananaaa69
@mrbananaaa69 Жыл бұрын
hi! I found a problem accessing your newsletter website, can I send the screenshot to Discord?
@WebDevCody
@WebDevCody Жыл бұрын
Sure
@LegendKiller977
@LegendKiller977 Жыл бұрын
Love your videos, very helpful and to the point! BTW, what's the VS Code theme you use?
@WebDevCody
@WebDevCody Жыл бұрын
bearded theme stained blue
@kuroisan2698
@kuroisan2698 Жыл бұрын
do you think about making some graphql tutorials especially dealing with files
@webdeveloperninja9220
@webdeveloperninja9220 Жыл бұрын
Good explanation
@filoktetesbror
@filoktetesbror Жыл бұрын
What about if you would want to deploy all of them to lets say, Azure/AWS, do you need a separate dockerfile for each project?
@WebDevCody
@WebDevCody Жыл бұрын
If you’re running your app inside a container, it’ll work on any platform
@filoktetesbror
@filoktetesbror Жыл бұрын
@@WebDevCody Gotcha, a great thanks for these videos, amazing content and learning a ton, wish you all the best!
@supercrunch3367
@supercrunch3367 Жыл бұрын
will you be integrating nginx with it? would love a tut too
@WebDevCody
@WebDevCody Жыл бұрын
No, I deploy my api to aws lambda so I don’t need nginx
@supercrunch3367
@supercrunch3367 Жыл бұрын
@@WebDevCody i see
@FunkyToe369
@FunkyToe369 Жыл бұрын
its not too hard to integrate nginx. can just add it as a service to your docker-compose, expose it at port 80 and internally it has no issues routing to your other services
@supercrunch3367
@supercrunch3367 Жыл бұрын
@@FunkyToe369 when u finally integrate it, how do you go about the deployment to AWS? Is it the same process? Cant seem to wrap my head around it.
@danielchettiar5670
@danielchettiar5670 Жыл бұрын
​@@supercrunch3367I have a microservices project, and I'm on the free tier of AWS. On my EC2, my nginx docker compose service listens on port 443&80. Port 80 requests are redirected to 443. It's pretty easy, it's not hard actually. You just have to get your code on your EC2, and then it's just as you would use any other machine, through the terminal.
@user-kn8jl1cw2x
@user-kn8jl1cw2x 10 ай бұрын
hi may I know why im having an issue when running a "docker-compose up" . the error is " services.nginx must be a mapping"
@WebDevCody
@WebDevCody 10 ай бұрын
I'm not too sure, I don't even recall using nginx in this video
@rakhisingh9797
@rakhisingh9797 Жыл бұрын
Btw how you store your jwt token in local store or in http cookies 🙂
@WebDevCody
@WebDevCody Жыл бұрын
Cookies
@nested9301
@nested9301 Жыл бұрын
i finally understand what docker really is
@ahmedbalaid7464
@ahmedbalaid7464 Жыл бұрын
I am looking for a program that will be a link between the worker and the store, and I am the one who controls them. Can I understand what kind of program
@kritsrijakkot9175
@kritsrijakkot9175 4 ай бұрын
I have questions. If I using t3 stack can I create docker-compose for build nextjs app and db in the docker compose file. You have example for me to do that or explain to me. Thank you
@WebDevCody
@WebDevCody 4 ай бұрын
I don't have an example. Do you mean hosting using containers?
@kritsrijakkot9175
@kritsrijakkot9175 4 ай бұрын
@@WebDevCody yes. Possible to use 1 docker compose on prod and everything work?
@kritsrijakkot9175
@kritsrijakkot9175 4 ай бұрын
I use VPS (digitalocean droplet)
@jora5483
@jora5483 Жыл бұрын
Random question. When it comes to deploying it on cloud you upload the image created by docker or choose the platform and build the app on cloud?
@WebDevCody
@WebDevCody Жыл бұрын
either, but usually your ci pipeline would build you image, test it, then push it to docker hub or ecr if it seems good
@jora5483
@jora5483 Жыл бұрын
@@WebDevCody great, thanks.
@epicujjwal
@epicujjwal Жыл бұрын
does this have hot reload features?
@shynsky
@shynsky Жыл бұрын
Great explanation as always 👏 Not sure if problem with ipad, but I didn't manage to subscribe 🧐
@shakapaker
@shakapaker Жыл бұрын
Thanks! Why 'yarn' instead of 'pnpm'?
@WebDevCody
@WebDevCody Жыл бұрын
no clue, just picked one honestly. is pnpm better?
@shakapaker
@shakapaker Жыл бұрын
@@WebDevCody From what I understand, for managing node_modules, `pnpm` uses hard linking and symbolic linking to a global on-disk content-addressable store. This gives you the benefits of far less disk space usage, while also keeping your node_modules clean. And it also seemed to me that it installs dependencies much faster. And also supports workspaces.
@dermachedjamel8970
@dermachedjamel8970 Жыл бұрын
what icon set does he use for VS code ?
@WebDevCody
@WebDevCody Жыл бұрын
Bearded icons
@nikhil182
@nikhil182 Жыл бұрын
One of the reasons why I avoid using docker is it consumes so much RAM, it makes development very difficult.
@chriskeo392
@chriskeo392 Жыл бұрын
Why dont u habe multiple dockerfiles for backend , frontend, db? Help!!?!? U explained so much thank u
@WebDevCody
@WebDevCody Жыл бұрын
You could do that if you want. That would be more useful if your backend was in java or some other language. When everything is nextjs, it doesn’t make as much sense
@chriskeo392
@chriskeo392 Жыл бұрын
@@WebDevCody that makes much sense! Love the content. Straight to the point
@complikatd
@complikatd Жыл бұрын
ternimal
Using docker in unusual ways
12:58
Dreams of Code
Рет қаралды 443 М.
The intro to Docker I wish I had when I started
18:27
typecraft
Рет қаралды 70 М.
When you discover a family secret
00:59
im_siowei
Рет қаралды 32 МЛН
Touching Act of Kindness Brings Hope to the Homeless #shorts
00:18
Fabiosa Best Lifehacks
Рет қаралды 18 МЛН
Do NOT Learn Kubernetes Without Knowing These Concepts...
13:01
Travis Media
Рет қаралды 280 М.
Why I use docker for my web dev projects
7:55
Web Dev Cody
Рет қаралды 33 М.
Decrease Next.js Docker Image Size 15x
5:36
Frontend Basics
Рет қаралды 11 М.
If you're not developing with this, you're wasting your time
14:30
Articulated Robotics
Рет қаралды 288 М.
Differences Between Docker Compose and Dockerfile by Example
11:01
Cameron McKenzie
Рет қаралды 18 М.
100+ Docker Concepts you Need to Know
8:28
Fireship
Рет қаралды 944 М.
How do we scale web applications?
21:11
Web Dev Cody
Рет қаралды 57 М.
Node.js is a serious thing now… (2023)
8:18
Code With Ryan
Рет қаралды 644 М.
How I deploy serverless containers for free
6:33
Beyond Fireship
Рет қаралды 492 М.