Why not just run everything on bare metal? What's the use case for containers?
>>110111639file system is not shared, declarative, runs the same everywhere
>>110111639To be able to run modern AIvibeslop without immediately getting your bare metal pwned.
>>110111639>What's the use case for containers?I can run X instances of a software stack Y times in the same machine. Can you do that without killing yourself in the process?
>>110111660how do you do this?bubblewrap, firejail, selinux, and apparmor work like shit
>>110111639To make hardware and software independent. Once you have more than a single server, you'll understand the need.
>>110111895cgroups & namespaces
>>110111639>use case for containerscentralized configuration, kek
>>110111639>What's the Point of Docker?
oh no we can't run everything on the same compooters too hardi no lets run everything on the same compooters except they all have docker installed problem solved
>>110111660Docker runs as root.
>>110111639>Why not just run everything on bare metal? What's the use case for containers?Deploying a webapp on a server takes from 10min to hours, which you need to repeat on every update and you will need to resolve conflicts, incompatibilities, firewall rules and other shit all the time. Now imagine you want to change sever and now you gotta spent a whole week migrating every service and pray you won't forget anything. Logging? Monitoring? Rollbacks? Isolation? Gotta cobble it up all yourself.Or you can just write a docker compose file that you can deploy in 20s and be done.Also if you have some CI/CD process you want your builda to just reliably complete without having to manually access the machine(which you often can't even do)This is why docker is a thing.
>>110112534That doesn't mean docker containers have root access to the machine. Docker containers have even less access than normal programs run as nobody
>>110111639Lets say you have a server and you want to run application x that needs dependency a,b and c no problem you can do it.Now lets say you also need to run application y that requires dependency a, b 2.0 and c 1.5. Well you can't run b 2.0 and b side by side nor c and c 1.5 so you're screwed. With docker you don't have to give a shit about that, install docker engine download a docker image just run it, the application creator worries about the dependencies you just run the docker image and all its dependencies are in the docker container, so you can easily rub both application x and y on the same machine without having to install anything other than docker.That is why docker is great. Long gone are the days of installing a load of shit on a box to get something running, just make a docker image and ship the entire thing it just works.
>>110111639anything server-related is easier with itanything test-related is a lot easier with it
>>110112534Only by default. You just need to set it up to run rootless.
>>110111639bitches cant make system components so you have to sandbox their shit
I don't want to shit up my system with a trillion files scattered everywhere because "developers" can't fucking make a static fucking binary
>>110111639Its pointless corpo software designed to abstract things unnecessarily in order to make the development process more complex, therefore longer, therefore justifying the wages of the corpo "developers".
>>110111639>bare metalsickeningly dumb term
>>110111639so that loonixtards with their dependancy issues can pretend like developers
>>110111639Extra security, plus the practical advantage of one container having an oopsie moment and hosing something essential remains limited to said container rather than breaking the whole system. Resilience, basically.
>>110111639First I need to know if you understand what container is.
>>110111639people may say shit like security and isolation but the main use case is still the ability to package up some software and sideload it so you don't depend on the release cycle of your OS and also fix dependency conflicts/issues by just have each package declare it's own. i mean you could also just use vms with vagrant
>>110112776>t. nojober
>>110111639useless shiti just upload final_version_for_sure_this_time_dot_zip via FTP and extract to my apache server like god intended
>>110113128vms are too costly that's the main point of containers
>>110113206yet people before docker just did it that way, i mean you're right but im just saying you could reproduce the same workflow with vms even if it would be pretty annoying
>install x and every dependency managed by the distributions package manager >Want to upgrade x>Have to update all dependencies, remove the old ones, chek id anything else uses them and not break (which of course is the case every time), dependency has to available on the package managerVs>docker compose upWallah retard, fucking useless thread
>>110112776Deployment is a thousand times easier with it retardTry having a job
>>110113338Try having a real job that actually contributes to society
>>110112581Wasn't this solved by static binaries and self-contained deployments decades ago?Wait nvm I think I now realize docker was to accommodate languages like javascript and python where the concepts of static binaries (compiled languages) and self-contained deployments (.net) are not a thing.
>>110111639Keeps base-system lean and bloat-free. All your bloat goes in the boat so you can delete it in one fell sweep.
>>110113366Take your own advice
>>110112776Do you have some sort of humiliation fetish?
>>110113326/thread
>>110113615Docker's usefulness is language/framework dependent.Python or Node = If we don't use docker we will be fucked when deploying.Java, Ruby, PHP = We can go either way with pros and cons for both.Go or .Net = Meh we could use it but don't really need to.
>>110113724It's also useful because it solves the deployment problem in a rather elegant way.PHP, for example, you're right you could just as easily set that up without Docker but then it becomes a nightmare to update the whole stack.I built a custom Gentoo Docker image with Nginx, MariaDB and PHP in it and push that to my private registry. My server only needs to pull down that image and then create individual containers and its ready to serve to web shit just like that.I need to update it because new shit came out or there's a security issue that needs fixing, then I just re-build it, push to my private registry again, server automatically pulls it down and redeploys the containers.Life is simple and I don't have to tear my hair out.
>>110111639You do run it on bare metal. That's what docker does.It just isolates that process from other processes running in the same kernel using Linux namespaces and uses a different root (using chroot or pivot_root). That's 80% of what containers do.
containers are used for isolation from diverse environment because the underlying software is sloppy. it cannot endure reality
>>110114021I just see it as a distribution mechanism, a means to an end.Say you want to ship something cross-country, you could put it in the back of somebody's car and it'll get banged about a lot or you package it neatly with everything it needs into a shipping container.The host operating system is messy, and fragile and trying to push too much through it doesn't scale.The container is neatly encapsulated and resilient. It can be torn down and replaced anew. If something goes wrong it can be rolled back to a previous state in seconds without dealing with crap like dnf history rollback (if you're on Debian then good fucking luck. You're about to lose a weekend figuring out how to rollback all the packages).
dnf history rollback
>>110112439This except that it actually does just work like that.
>>110111639It's basically just a crutch for retards who don't know how to use chroot.
>>110114088Chroot has no isolation like Docker. You can escape a chroot laughably easily if you can get root. It's why the BSD's and Solaris put so much time and effort into Jails which is what eventually inspired Linux Containers.
>>110113615wrong realization, docker is used for any kind of language
>>110114065>You want to ship something cross-countrynice ideas you have btw, ye. dont forget you cannot escape/use the thing without a container-god.
Would podman mog it if it had real compose support? That's seemingly the only downside to using podman over docker.
>>110114346There is podman-compose:https://github.com/containers/podman-compose