-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Freebsd linux containers #5480
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
Freebsd linux containers #5480
Conversation
|
Hi @gizahNL. Thanks for your PR. I'm waiting for a containerd member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
Build succeeded.
|
|
Build succeeded.
|
|
Build succeeded.
|
I think the integration test failing is not related to my commits. (I see a timeout) |
|
Build succeeded.
|
oci/spec_opts.go
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The other maintainers might feel differently about this so I'm not asking you to make a change yet, but the way I probably would have done this is to define a function like appendOSMounts in each of spec_opts_freebsd.go/spec_opts_linux.go/spec_opts_windows.go with whatever content is appropriate there. The Linux one would likely be empty, but I imagine there could be some use for this on Windows with the LCOW/WCOW work.
In addition to providing a possibly-reusable abstraction for FreeBSD and Windows to achieve similar goals, an advantage is keeping FreeBSD-specific filesystems like "linprocfs" and "linsysfs" out of the common file that is compiled for all operating systems.
The other advantage of this is that, when compiled for FreeBSD, we could also add a WithLinuxEmulationMounts functional option that clients of containerd can use without having to use WithImageConfig/WithImageConfigArgs or even having an image with a declared OS of "linux".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, that seems like a better approach. I'll wait for feedback from the other maintainers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does anybody else want to way in on this? I see no issues in rewriting as to Samuel's suggestion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Samuel's suggestion seems reasonable to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since no one else has said anything: I'd like to see the change that I suggested. 😄
|
/ok-to-test |
|
Build succeeded.
|
alakesh
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wanted to understand why the freebsd defaults for mount points /proc and /dev are missing some of the defaults that we use for linux.
|
Thanks for explaining. Looks good to me otherwise. |
Signed-off-by: Gijs Peskens <gijs@peskens.net>
Signed-off-by: Gijs Peskens <gijs@peskens.net>
Signed-off-by: Gijs Peskens <gijs@peskens.net>
b1171b2 to
1903d87
Compare
|
Build succeeded.
|
Signed-off-by: Gijs Peskens <gijs@peskens.net>
Co-authored-by: Samuel Karp <samuelkarp@users.noreply.github.com> Signed-off-by: Gijs Peskens <gijs@peskens.net>
nosuid, noexec options added to /proc and /sys. ro added to /sys Modified code to always add linprocfs & /dev/fd even if not present in existing Mounts slice. Signed-off-by: Gijs Peskens <gijs@peskens.net>
1903d87 to
13e69ae
Compare
|
Build succeeded.
|
kzys
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The change looks good. It would be great if you can tidy up your commit history a bit. For example, the fact you didn't gofmt files in the beginning is not worth to keep.
|
Hey @gizahNL. I'm sorry to bug you, but are you still working on this? |
Haven't had time recently, I'll try to cleanup and rebase this week :) Thanks for the reminder! |
|
If we want to get this into 1.6 then can we get a rebase on this PR |
|
Superseded by #7000 |
|
Closing since we've now merged #7000. Thank you for working on this! |
This allows running Linux containers on FreeBSD and modifies the mounts so that they represent the linux emulated filesystems, as per: https://wiki.freebsd.org/LinuxJails
Depends on PR: #5472