Egregoros

Signal feed

Timeline

Post

Remote status

Context

8
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@phnt I fucking HAAATE docker for this very reason. it has made lazy dev practices too convenient... they can always tell their users "oh download our docker image!" without much of any, IF any, provision for running the software standalone.

have to deal with this shit at work and it's annoying as fuck
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@bajax @phnt then don't, just treat the `Dockerfile` as an instruction list with no bullshit, just commands. i prefer that over super long winded installation scripts that need to explain all the steps instead of just giving me commands to run
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@shibao @phnt I'm not gonna be able to explain to you why that's unacceptable lol. it amounts to "hassle" but I suspect you're gonna have what amounts to a moral objection to that so I'll just leave it there. (is there a way to have a patch you can set on dockerfiles so you can use automatic updates and automatically apply your changes? then you only have to get into it if you touched something that changed)

I've started using ansible to set up shit, maybe I can have an LLM routine that converts dockerfiles into roles or something.
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@bajax @phnt the whole point of docker is that it create a repeatable setup in an environment like an ansible playbook, except every time the docker image is built you're actually executing the ansible playbook and you're guaranteed to get the same thing because you're starting from a fresh instance of ubuntu or alpine or whatever the base image is from the beginning. the "hassle" is the load on maintainers that people who can't linux and expect the maintainers to do their weird custom linux admin for them

>suspect you're gonna have what amounts to a moral objection
what? this is all practical, not moral. you're the one moralizing about how a repeatable setup is bad and you won't explain why to me because you view it as "bloat" or something and want the maintainers to handhold you on making guides so that you can use your weird custom linux setup rather than using what the maintainer has decided to support for their software
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@bajax @phnt i don't get why you're shitting on this thing that you don't understand fully

>is there a way to have a patch you can set on dockerfiles so you can use automatic updates and automatically apply your changes?
yes you create a custom dockerfile that just like how the normal dockerfile starts from the ubuntu image and adds commands and whatnot for it, you just have a custom dockerfile that starts with whatever software's dockerfile you're using and then add commands on top of it, which basically amounts to you following a software's installation guide and then deciding to do more commands after you're done with it. but with docker, it's repeatable and idempotent (or supposed to be in theory at least)

Replies

26
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@bajax @phnt if you want to change something in the original dockerfile, just copy and paste it and then make your modifications and then ideally merge it back into the main repo or push it up on your own repo, this is the equivalent of making your own guide, but you can keep running it, when you do docker build it's the equivalent of spinning up a new VPS and doing the installation instructions from scratch automatically, and then you can run tests against it to check if it works. but then you don't have to spin up a second device with a second kernel with docker. that's it, that's all the "bloat" that everyone is complaining about
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@shibao @phnt it's a preference thing and you're trying to cast it as some objective truth that you can force people to accept if you just bombard them with more information.

I don't like not having direct access to my executables. I don't like having a central service being the gatekeeper to the environment my software runs in. I don't like having to work with those things outside of my usual environment. I don't like my system suddenly having multiple IPs that I have to manage the security/firewall and routing for (or make sure that the assumptions of the container don't fuck them up for me). it makes messy assumptions about how software even works that a lot of people think is "good enough."

docker does things I don't like. that's all.
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@sun @phnt @shibao I'll give a chance, whatever it is.

but I'm getting really sick of all the special software products they make whose only function is to act as another layer between us and our software products.
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@bajax @phnt @shibao podman is literally just a docker workalike that integrates with Linux correctly instead of doing its own retarded shit, and unprivileged to boot.

there's enough room for KVM and systemd-nspawn (full OS containers, integrated with service management and security) and Podman imo.
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@sun @bajax @phnt NOTHING ON PODMAN EVER WORKS. IF YOU LOOK AT SOFTWARE FOR PODMAN, THEY HAVE TO HAVE CUSTOM IMAGES SPECIFICALLY BUILT FOR PODMAN, YOU CAN'T JUST USE REGULAR DOCKER IMAGES FOR IT HALF THE TIME. IT LITERALLY DEFEATS THE WHOLE POINT OF DOCKER
@bajax @phnt @lolitechengineer @sun you literally don't have to use docker, you can manually create OverlayFS layers and then create your own namespaces in stock linux, these are included in your kernel already. docker just automates these for you. i'm going to find the great talk that explains how docker works because it's actually really simple, people just don't understand what they're doing at all
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@bajax @phnt

>I don't like not having direct access to my executables
you literally just do `docker exec -it container bash` or whatever and you instantly have a shell into the environment. but it's running on your computer, complaining about not having access to things you're running on your computer is crazy. you can even just make changes in this environment but it will be ephemeral if the docker image ever restarts, unless it's part of a host/bind mount. regular volume mounts are literally just storing the virtual filesystem or whatever in /var/lib/docker or whatever

>I don't like having a central service being the gatekeeper to the environment my software runs in
it's not, it's literally just running on your computer like any other executable? do you complain about lvm being a central gatekeeper service for your hard drives?

>I don't like having to work with those things outside of my usual environment.
then don't? my whole point is you can take the items out of the dockerfile if you want but then it's on you to take it out of a dockerfile. most software that isn't total complete dogshit can just be run without docker. if it requires a custom docker image then that's like software that can only run on one guy's machines. we used to have standards and docker doesn't mean we should throw away those standards

>I don't like my system suddenly having multiple IPs that I have to manage the security/firewall and routing for
docker networks basically give you a private VPC on your computer, i think that's better than having some localhost bound port or something that any other service can access on your machine

>it makes messy assumptions about how software even works that a lot of people think is "good enough."
then don't use dogshit software
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@bajax @shibao
>docker does things I don't like. that's all.

Fun fact: -p 8080:8080 pierces firewall and exposes that port to the public on Podman and probably Docker as well. Guess how many people know that.
If host IP is set to 0.0.0.0 or not set at all, the port is bound on all IPs on the host.
Whoever thought that a container should be able to modify firewall settings needs to be shot.
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@phnt @bajax okay then compile linux without any kernel routing and just use slirp or other user-mode network stacks instead. it shouldn't modify firewall settings, it's just doing plumbing for you inside your machine instead of externally. i think that's ideal because i want to have better separation between my firewall configuration and my software networking configuration on my hosts
[CW]

Content warning

re: Self-hosting is dead, long live self-hosting

Show
@shibao @bajax
>you just have a custom dockerfile that starts with whatever software's dockerfile you're using and then add commands on top of it

And now do that for every Docker software you want to use that ships a Postgres install in Docker compose, just because you might want pg_repack in there.