-
Notifications
You must be signed in to change notification settings - Fork 83
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add install alongside
#380
Comments
Bigger picture though, while "alongside" installs were easy to implement (it's just small bits of code on top of
|
This all said I think in practice people should be automating these invocations, not typing them by hand. It's already very doable by scripting in e.g. cloud-init and that's the intended design. |
I agree on takeover installs, this is what most people will want, since I don't believe there is any easy way back to the previous root OS. Being able to maintain /home would be nice, but in most cases we expect people to just boot an existing image and convert it to an Bootable OCI Image. |
I read about dynamic mounts but not sure how this can allow access to / from within the privileged container without Podman requiring a change? |
I believe we can get access to the root mount namespace at least because we have |
Ok, good idea. |
This is just mild sugar on top of the existing `to-filesystem` right now. But, I think we can do more with this later. Partially addresses containers#380
This is just mild sugar on top of the existing `to-filesystem` right now. But, I think we can do more with this later. Partially addresses containers#380 Signed-off-by: Colin Walters <[email protected]>
One part in #382 |
One thing I wanted to sanity check here is; do we have
Also for my own reference, the man pages are over here https://github.com/brauner/man-pages-md (because groff stinks apparently, which I agree with). |
We're really going to need to switch over to having the container do dynamic mounts; cc containers#380 (comment) Just noticed this missing in one place, and found others with a grep. Right now we do operate without, but it can be racier. Signed-off-by: Colin Walters <[email protected]>
This works around an issue where `lsblk` ends up parsing data cached from udev in `/run/udev`, but we don't have that mounted by default. Adding a new mount point hard requirement is logistically complicated right now - we will eventually switch to dynamic mounts with `open_tree` (cc containers#380 ) but this is a relatively straightforward workaround. Signed-off-by: Colin Walters <[email protected]>
This works around an issue where `lsblk` ends up parsing data cached from udev in `/run/udev`, but we don't have that mounted by default. Adding a new mount point hard requirement is logistically complicated right now - we will eventually switch to dynamic mounts with `open_tree` (cc containers#380 ) but this is a relatively straightforward workaround. Signed-off-by: Colin Walters <[email protected]>
This issue ended up being a grab bag but as of right now we do have |
Right now we have
podman run --rm --privileged --pid=host -v /:/target --security-opt label=type:unconfined_t "${image}" bootc install-to-filesystem --karg=console=ttyS0,115200n8 --replace=alongside /target
We can first consider simplifying like this by adding a new toplevel
to-existing-root
:podman run --rm --privileged --pid=host --security-opt label=type:unconfined_t -v /:/target "${image}" bootc install to-existing-root
or so, which would assume installing to
/target
. This consolidates--replace=alongside and /target
to justto-existing-root
.I don't see a reason to support installing alongside to not the rootfs.
Now, if we can switch to using dynamic mounts then we can also drop the
-v /:/target
- I'd like to test this out as it could simplify a lot of our code.Handling kargs in alongside
When doing an alongside install, there are a ton of use cases for picking up things from the existing environment:
Or in general, picking up "configuration".
I am a bit uncertain if we try to add a lot of sugar to bootc in the near term for this versus having higher level tools do it, but...
We could in
to-existing-root
also have something like--import-kargs=console=*
or so to fetch the existing console kernel args (match by glob).The text was updated successfully, but these errors were encountered: