/t/ - Technology

Discussion of Technology

Index Catalog Archive Bottom Refresh
+
-
Options
Subject
Message

Max message length: 0/12000

files

Max file size: 32.00 MB

Total max file size: 50.00 MB

Max files: 5

Supported file types: GIF, JPG, PNG, WebM, OGG, and more

CAPTCHA
E-mail
Password

(used to delete files and posts)

Misc

Remember to follow the Rules

The backup domains are located at 8chan.se and 8chan.cc. TOR access can be found here, or you can access the TOR portal from the clearnet at Redchannit 3.0.



8chan.moe is a hobby project with no affiliation whatsoever to the administration of any other "8chan" site, past or present.

You may also be interested in: AI

Docker shitters are the new nodemonkeys Anonymous 04/09/2025 (Wed) 14:37:11 No. 17623 >>17626>>17956>>18031
Every now and then some piece of software gets made that tries to make things simpler and easier to use. Every few years one of those projects gets adopted in droves and becomes the hot new developer meme and retards who shouldn't be let within 5 miles of a production server start shitting out endless amounts "clever solutions" with it because it's the only tool they know. Then other shitters come in, copy paste the first piece of spit and gum they see and call it working code. Eventually you end up with an environment where you have a handful of good projects drowning in a sea of pajeetcode. In the 2010s that was node.js. Frontend devs writing critical backend code in javashit because it's the only language they know, and then writing entire applications to run inside a chromium instance because it's so much easier than using a GUI toolkit. Today, that tool is docker. Wanna run a static webserver? Here, use ten thrown together dockerimages. Wanna compile software? Use this custom dockerimage, we don't support anything else. Check out this cool new software! Oh, you want to run it? Just run the official dockerimage so you can start the program! Docker is "lightweight". Downloading 2 GB of images to get the libraries you need for running your 50 lines of python code is way less bloated than that sparse 3 GB qcow2 image you can run anywhere. The venv is only 250 MB? Who cares lol. Docker is "secure" so of course there's no problem when your dockerfile exposes two dozen ports to your entire network. How else could your 15 different images running on the same fucking machine possibly communicate with each other? Installing docker images is easy. Simply pick out the one official image on docker-hub from the millions of repositories with malware grafted onto them. Be sure to audit every single dockerfile to make sure all the devs did the same! Docker is easy. When something breaks you can docker compose down and rebuild your container. Cross your fingers that it works. It's still broken? Then you can docker exec -it sh and troubleshoot your image from withing. Whoops, you used a minimal image that doesn't have sh. You can just make your own less minimal image that includes sh. It's easy. Docker is the perfect development environment. Installing dependencies is as easy as adding them to your dockerfile. But why bother making your own when you can blindly copy paste dockerfile code you found on someone's blog? Now you have your dependencies working but oh no! Your VSCode linter doesn't know about your dependencies! Do you properly reconfigure your setup? Why bother thinking when you can – get this – install all your dependencies locally! Now you can experience the joys of running docker at the same time as the joys of dependency management just so your editor can tell you you misspelled np.random! Better make sure your build system doesn't use your local libraries anywhere! And that's not all. You want to use a modified library for your build? Then you can just rebuild your entire docker image with your library added in. And never before could you use several versions of the same library in the same build process. Cmake? Never heard of it! Docker is the future! >but I NEED it for muh servers Look at this John Netflix who's serving 200 users across the ENTIRE city. Better set up Kubernetes so you can maintain your single fucking machine just as easily as you could 2.5 servers with no k8s. >b-but muh pipelines Yeah, go continuously integrate that single user desktop only application you're working on you fucking faggot.
>>17623 (OP) When you grow up and enter the workforce, you'll find that we used to have racks of Linux machines, each running as an individual license server because >enterpwise Linux developers are incapable of writing robust applications. Now in many business, that has been reduced to one physical machine (+ redundancy) running Docker. You're closer to the nodemonkey than you think, and it's down to your inexperience in the real world.
Docker is for retard faggot devs and is insecure by default. Pods are for enterprise use.
>>17623 (OP) I completely disagree, Docker is not like the NodeJS phenomenon. Docker is a great system that solves various problems, among which is the age-old problem, namely that it is practically impossible to distribute programs in the GNU/Linux ecosystem. I purposefully said GNU slash Linux because it is primarily the GNU part that introduces self-imposed restrictions (i.e. mental illnesses) that make it impossible to have proper compatibility. With Docker, you can ship whatever you need to run your code. So now Linux can have a similar level of compatibility that Windows always had (or even more, albeit for a much higher price). Your venv doesn't guarantee compatibility. Developers who care about their end users (I know, this is rare in some circles) want their stuff to work. Orchestration tools like compose make it easy to replicate environments. They make it easier to set things up right, which also reduces potential attack surfaces. Not having to go through a humiliation ritual to compile a codebase is also very nice. Making it easy for people who don't know what they're doing to expose their system is not really the fault of Docker; that happens when you deploy any kind of server software irresponsibly.
>>17623 (OP) I am really sad Earthly just shut down. I had just made some gleam, rebar3, and dpkg libs for Earthly not eve two weeks ago.
Never used docker before. I see there is a python image. How do you use this? How do you install packages?
The only place where docker really shits the bed is with permissions, honestly. You should easily be able to map whatever UID/GID you pass from the host to a fixed UID/GID within the container, but instead it's basically full retard design where it just literally uses what you pass in. This, plus the fact that you need shit like autoheal for what should be built-in functionality. Other than these things, it's great.
The only good thing about docker is being able to shove your folder into the image from windows with the -v flag and operate on it with linux tools. Thats is how I compile code with gcc/clang without going through the ordeal of installing outdated mingw and other tools on windows. >>18058 if you run it normally with docker run --rm -it python you just get a regular python with no packages but if you do docker run --rm -it --entrypoint bash python you get dropped into a shell where you can do a pip install <whatever> and then run python from the shell but this only lasts as long as the container is running. the "right" way is probably making your own docker image that extends the python image with from python:latest docker is fine. The real nightmare is k8s and helmfile. Not helm. Helmfile. I hate my job bros.
Docker solves the problems created by people who use brittle programming languages like JS and PHP that require a runtime that can't be bundled like in Go. It also solves the issues that exist with shared libraries and glibc conflicts. Your post makes it very clear that you have never developed or deployed networked software professionally. The real problem with Docker is how it can destroy permissions and can be hell with its networking. I guarantee that the work you put in to solve those problems will be less than setting up every piece of scripting language garbage software that you need to.
>>18099 podman at least uses root inside the container and whoever the container is being run as outside
>>18181 Podman would be great if it wasn't extremely janky and half-baked. Its compose support is lacking, for example, it doesn't even support health checks. You can use rootless docker in most cases that you'd use podman, as long as you don't need to change ulimits (rootless docker doesn't support that).
>>18232 What the hell were they thinking not supporting compose on podman? Compose is nice and clean.
>>18241 There's podman-compose but it's not directly maintained by the same people who maintain podman, and it doesn't support a bunch of the normal compose features. It's what finally made me stop using podman.
Just write your program in Rust and you don't need a docker image. You can download all dependencies with cargo build regardless of what OS you're on. And the resulting binary should not have any dynamic dependencies except for libraries that should be expected to be a part of the base OS in the first place. You can just ship a single executable. Or a tarball with the source code and let the client grab rustup.
>>18242 Yeah exactly, this is why I haven't even looked into podman more. I know you can actually use the docker client and set the socket to podman, so you could use docker cli and compose as the frontend. I don't know what the advantages would be tough. I tried it once and got it to work.


Forms
Delete
Report
Quick Reply
Drag files here to upload or
click here to select them
No Cookies?
0