Live data from Hacker News

Show HN: Convert your Containerfile to a bootable OS

github.com

41–50 of 61 posts

Re: Show HN: Convert your Containerfile to a bootable OS

#44
post #11

Earlier quoted context omitted.

If that's what your entrypoint sets up, yeah?

I meant physically render the full website on the screen.

I know.

This turns a Linux container into a bootable Linux OS.

If your container starts a GUI environment and launches a browser pointed to your React app I see no reason to think that wouldn't work after making it bootable.

It sounds like you're expecting it to be some kind of OS of its own though, that it would automatically drop straight in to code you give it somehow. That's not what it is.

Re: Show HN: Convert your Containerfile to a bootable OS

#45
post #30

Earlier quoted context omitted.

GNU Guix does an awesome job with this. The documentation is one of the main reasons I left NixOS, and then some time later I landed on Guix. I have stuck on the latter for a few years now.

Out of personal interest, do you also make use of the non-free parts of Guix? And if so, how well do they work, and how well are they documented compared to the "core" part? The orthodoxy of free software purity is nice, but I unfortunately also need to get CUDA working. I tried Nix a few times, but the documentation was so lacking and/or outdated that I couldn't figure out how to get the setup I needed working, and…

Can't speak to CUDA as all of my systems run AMD or Intel at this point, but I use the nonguix channel for the mainline Linux kernel. I even built a custom iso using the mainline kernel, since my servers NIC requires non-free blobs. The process for doing that was surprisingly easy to me.

Between the nonguix README and other resources like systemcrafters, you're in pretty good company as far as the documentation for non-free things to.

Edit: less related but I still wanted to mention:

Guix makes extensive use of the info[0][1] system for documentation also. There is essentially a textbook worth of information locally on the machine, which is generally what I use instead of turning to the web.

[0] https://www.gnu.org/software/texinfo/manual/info-stnd/info-s...

[1] https://www.gnu.org/software/emacs/manual/html_mono/info.htm...

Re: Show HN: Convert your Containerfile to a bootable OS

#46
I understand this is similar to alpine-make-vm-image [0] or nixos-generators [1]

By the way, is there a way to create minimal NixOS VMs without systemd?

- [0] https://github.com/alpinelinux/alpine-make-vm-image - [1] https://github.com/nix-community/nixos-generators

Re: Show HN: Convert your Containerfile to a bootable OS

#47

I understand this is similar to alpine-make-vm-image [0] or nixos-generators [1] By the way, is there a way to create minimal NixOS VMs without systemd? - [0] https://github.com/alpinelinux/alpine-make-vm-image - [1] https://github.com/nix-community/nixos-generators

> By the way, is there a way to create minimal NixOS VMs without systemd?

No, systemd is a hard dependency for NixOS.

Re: Show HN: Convert your Containerfile to a bootable OS

#48
post #45

Earlier quoted context omitted.

Out of personal interest, do you also make use of the non-free parts of Guix? And if so, how well do they work, and how well are they documented compared to the "core" part? The orthodoxy of free software purity is nice, but I unfortunately also need to get CUDA working. I tried Nix a few times, but the documentation was so lacking and/or outdated that I couldn't figure out how to get the setup I needed working, and…

Can't speak to CUDA as all of my systems run AMD or Intel at this point, but I use the nonguix channel for the mainline Linux kernel. I even built a custom iso using the mainline kernel, since my servers NIC requires non-free blobs. The process for doing that was surprisingly easy to me. Between the nonguix README and other resources like systemcrafters, you're in pretty good company as far as the documentation for n…

Thank you for your feedback and the information!

Re: Show HN: Convert your Containerfile to a bootable OS

#49

The 'bootable container' / 'native container' space is getting really exiting, even (and especially) for desktop usecases. Atomic Fedora has had support for so called Ostree Native Containers for a while now, and that will eventually adapt `bootc` as the base layer for building and booting containers (but as of now it's not totally ready yet). VanillaOS is also working on similar things but I don't think it'll use `b…

Where I'm from, we refer to a "bootable / native container" as an "OS image".

Re: Show HN: Convert your Containerfile to a bootable OS

#50

I don't understand how it works. Did I guess it right that it basically processes Containerfile and instead of producing a .tar artifact (which is what container images usually are) it produces .qcow2/.ami/.raw/.iso/.vmdk file which in case of .qcow2/.raw/.vmdk can be used by a virtualization software to start up a VM with a disk mounted from that file? Will the changes made inside a session with such a VM persist? o…

1) you create an container image based on the upstream image that supports bootc, using a Containerfile that serves what ever purpose you want.

2) you push that container image to some registry

3) you use the bootc image container to create an qcow file from the image you have built (or you install the image on a bare metal system)

4) you boot up the virtual machine or bare metal system, which now includes "bootc" utilties too

5) from this point on you can update the container image you have created in step 1) and you automatically roll forward the booted virtual machine or bare metal system to the latest image you have relased (or rollback, if your updated image breaks stuff) using the included bootc utility

Currently the image that supports this seems to be limited to centos:stream9, or rhel9:

https://www.redhat.com/en/blog/image-mode-red-hat-enterprise...

Post reply on HN