Isn’t it enough to have a single offsite backup?
Isn’t it enough to have a single offsite backup?
Please demonstrate how the example I gave above can be done with common scripting tools, such it would mimic the declarative experience I described. I don’t think it is possible as you claim.
Can you please point to where I deflected any questions? I looked and could not find any instances of such.
I actually answered the question “why”, please refer to previous comments. It is also answered in the main post. But I will rephrase and summarize again here:
Distroless is not core to the idea. It’s only a nice to have. The main point is the composability, Declarative design, etc.
the base image is nodejs
Which has its own dockerfile. My proposed tool would allow using other images as base too, but that is not the problem it is solving.
copy your app
Well you’d have to have it compiled or built if that is required in your case. With my system, the build recipe would be a gentoo ebuild (shell-script-like) that you would just reference.
The example I gave is pretty simple, you’re right. Say in another case, you list the following packages:
nodejs, nginx, vpn-app(wireguard), some-system-monitoring-app, my-app
You could start with a nodejs base or an nginx base, and then write the steps to install the other. You’d also have to make sure to get all the deps if they have them.
You’re unlikely to find a ready image that has all what you want. But with my method, you can compose different ones however you like, rather than having to find an image that matches your exact use case.
I had a feeling nixos would have something, but I avoided it because it seemed more than a day’s worth of learning (and also its a bit opinionated). But I will revisit it one day!
Did not know about apko. I am not attached to distroless, just thought it was a nice to have. So apko might be a reason I don’t pursue this project anymore. Thanks for showing me!
Your comment is very insightful for other reasons too. Thanks a lot :)
The package manager would not be part of the container image. The package manager is only used to build it. The container image will only include the packages the user specifies.
combining portions of images as multi-stage builds
That’s something I am making use of for this, actually :)
What you’re describing not only already exists…
Can you please give an example of a tool that can build a container image by being given only a list of packages it needs to have?
My tool would be as simple as doing something like this:
build-container --packages nodejs-20.1.1, yarn-4.2.2, some-app-i-made-1.0.0
And I would have a container that only has nodejs binary, yarn, and my own app. no package manager or any utils.
Whats the risk? My uptime is pretty good and I host from home.
Why not host at home?
But it’s not self hostable.
Not self hostable and not secure by default.
Most people use JavaScript for this nowadays, but most commentary also hates on it.
I’ll be real with you. There’s a reason JavaScript keeps being chosen despite the hate. It’s so much easier and the dev experience is much more polished for creating desktop apps.
The reason it’s hated on is that it is running a browser in the background, which people view as too bloated for a desktop app. Moreover, JS tends not to play well with system-wide themeing like GTK or QT.
But in the end, as a developer, you’ll be dealing with a lot of messiness going with anything else. If you’re up for a challenge, do try other things. But if you just want something that works and looks nice, do Js
I tried it about a year ago. I don’t remember why I left it, but I think I did have a couple issues with it related to nvidia. I’ll try it again.
Will Godot be helpful? Given what I’m making is non graphical and I don’t really want to use pre-simulated stuff.
I don’t want to do it absolutely from scratch. I do want something that makes the math easier, but not restrict me in how I simulate something.
So I want something that would give me common functions used in simulations, but not something that gives me “here’s a model for money or person”.
Thanks for the link. But is this really unseen in FOSS? My understanding is some FOSS projects do this so that it is easy to make major decisions without having to bring every person that has ever contributed to the project, kinda like how ZFS is stuck with license issues because they can’t bring all contributors together to approve a license change.
Any examples of this? PRs that are good overall but not for corporate sponsor?
That’s just a bandaid on capitalism’s issues. Urging people not to support the biggest actor will never work in the grand scheme of things, when said actor provides their best immediate interests.