-
Notifications
You must be signed in to change notification settings - Fork 5.2k
added basic docker support #1020
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
Conversation
There are some options here that concern me. E.g. CONFIG_MEMCG_SWAP
In general any config changes more intrusive that just adding modules need to be examined carefully. If you could do some testing with and without these options enabled to confirm the impact on memory usage and performance that may help (e.g. check free memory on boot and benchmark like nbench). I'd also like to know how many users actually want this feature, so if you do then post here. |
IIRC, the overhead from CONFIG_MEMCG_SWAP can be avoided by not enabling it (there is a boot option to disable it at runtime). I can definitely see the OverlayFS support being generally useful even aside from Docker however. |
Hi @popcornmix thank you for the fast reply, I'll reduce the PR to
which is considered to be the minimal set of kernel options. I'll test it and refine the PR. |
OK, compiled the kernel with this new set of options and refined the PR. |
I've run some tests (i.e. time (compile the linux kernel) twice) with both versions I haven't found any serious performance impacts, here are the results: |
Are they results of running |
I've run
Output of
Output of
|
Hi @popcornmix It would be handy to get OverlayFS in as well the other bits to allow basic Docker support. |
👍 for Docker support on the Pi. Have long been waiting for it. Also +1 on OverlayFS, since from my experience it is the fastest and least problematic graph driver for Docker. |
👍 |
👍 |
Docker support? OverlayFS? Count me in! |
I'm not against Docker and OverlayFS in principal, provided it doesn't penalise non-users. Can someone outline their reasons for wanting it? |
As far as I have run the test, I haven't seen any signs of penalisation. Only two options are included as non-module (CONFIG_CPUSETS, CONFIG_PROC_PID_CPUSET). The kernel documentation says about cpusets: |
There are many articles reasoning for running docker on the RPi |
OverlayFS is also useful outside of Docker - being able to merge say a USB drive and the SD/eMMC so you can protect important system software on a RO partition/device but still allow full write access |
Can you squash these down to one commit? |
opened a new PR with one single commit |
FYI you could have used git push -f to replace the two commits with the squashed one. |
See: raspberrypi/linux#1020 kernel: BCM270x_DT: Default Compute Module i2c, i2s and spi support kernel: bcm2835-sdhost: Improve error handling and recovery See: https://discourse.osmc.tv/t/test-new-raspberry-pi-sd-card-driver/5058/46 firmware: arm_loader: Only add arm/vc i2c aliases if exactly one camera port
See: raspberrypi/linux#1020 kernel: BCM270x_DT: Default Compute Module i2c, i2s and spi support kernel: bcm2835-sdhost: Improve error handling and recovery See: https://discourse.osmc.tv/t/test-new-raspberry-pi-sd-card-driver/5058/46 firmware: arm_loader: Only add arm/vc i2c aliases if exactly one camera port
Even if you compile the kernel with CONFIG_MEMCG_SWAP, it is disabled anyway during boot. |
See: raspberrypi/linux#1020 kernel: BCM270x_DT: Default Compute Module i2c, i2s and spi support kernel: bcm2835-sdhost: Improve error handling and recovery See: https://discourse.osmc.tv/t/test-new-raspberry-pi-sd-card-driver/5058/46 firmware: arm_loader: Only add arm/vc i2c aliases if exactly one camera port
I've added some switches in the default kernel config which are needed to run docker on the RPi
Kind regards
Uli