From 07b042c53ed0e81d894810002162f7c0d92a68c5 Mon Sep 17 00:00:00 2001 From: Gerard Ryan Date: Sat, 20 Jun 2020 18:02:29 +1000 Subject: [PATCH] docker-ce: Simplified config layout for menuconfig cgroupfs-mount: Replaced dependency with cgroup config option Signed-off-by: Gerard Ryan --- utils/cgroupfs-mount/Makefile | 12 ++- utils/docker-ce/Config.in | 151 ++++++++++++++++++---------------- 2 files changed, 88 insertions(+), 75 deletions(-) diff --git a/utils/cgroupfs-mount/Makefile b/utils/cgroupfs-mount/Makefile index 03d1088a6..e5c3eabe1 100644 --- a/utils/cgroupfs-mount/Makefile +++ b/utils/cgroupfs-mount/Makefile @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=cgroupfs-mount PKG_VERSION:=1.4 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://codeload.github.com/tianon/cgroupfs-mount/tar.gz/${PKG_VERSION}? @@ -12,11 +12,19 @@ PKG_MAINTAINER:=Gerard Ryan include $(INCLUDE_DIR)/package.mk +define Package/cgroupfs-mount/config + config CGROUPFS_MOUNT_KERNEL_CGROUPS + bool "Enable kernel cgroups support" + depends on PACKAGE_cgroupfs-mount + default y if ( DOCKER_KERNEL_OPTIONS || LXC_KERNEL_OPTIONS ) + select KERNEL_CGROUPS +endef + define Package/cgroupfs-mount SECTION:=utils CATEGORY:=Utilities TITLE:=cgroup mount scripts - DEPENDS:=@KERNEL_CGROUPS +mount-utils + DEPENDS:=+mount-utils MENU:=1 endef diff --git a/utils/docker-ce/Config.in b/utils/docker-ce/Config.in index dba32c45a..56f1e0b57 100644 --- a/utils/docker-ce/Config.in +++ b/utils/docker-ce/Config.in @@ -1,85 +1,90 @@ -menu "Kernel features for Docker" - config DOCKER_KERNEL_OPTIONS - bool "Enable Basic kernel support for Docker" +config DOCKER_KERNEL_OPTIONS + bool "Enable Basic kernel support for Docker" + depends on PACKAGE_docker-ce + default n + select KERNEL_CGROUPS + select KERNEL_CGROUP_CPUACCT + select KERNEL_CGROUP_SCHED + select KERNEL_NAMESPACES + select KERNEL_CPUSETS + select KERNEL_MEMCG + select KERNEL_KEYS + select KERNEL_DEVPTS_MULTIPLE_INSTANCES + select KERNEL_POSIX_MQUEUE + help + Select needed kernel options for Docker. Options include + cgroups, namespaces and other miscellaneous options. + see also https://github.com/docker/engine/blob/master/contrib/check-config.sh + +config DOCKER_SECCOMP + bool "Enable support for seccomp in Docker" + depends on PACKAGE_docker-ce + default n + select KERNEL_SECCOMP + select PACKAGE_libseccomp + help + Build Docker with support for seccomp filters. + Select libseccomp which also pulls-in the needed kernel features. + +config DOCKER_RES_SHAPE + bool "Enables support for resource shaping" + depends on PACKAGE_docker-ce + default n + select KERNEL_MEMCG_SWAP + select KERNEL_MEMCG_SWAP_ENABLED + select KERNEL_BLK_DEV_THROTTLING + select KERNEL_CFQ_GROUP_IOSCHED + select KERNEL_CGROUP_PERF + select KERNEL_FAIR_GROUP_SCHED + select KERNEL_CFS_BANDWIDTH + select KERNEL_RT_GROUP_SCHED + +menu "Network" + depends on PACKAGE_docker-ce + + config DOCKER_NET_OVERLAY + bool "Enables the Overlay network feature" default n - select KERNEL_CGROUPS - select KERNEL_CGROUP_CPUACCT - select KERNEL_CGROUP_SCHED - select KERNEL_NAMESPACES - select KERNEL_CPUSETS - select KERNEL_MEMCG - select KERNEL_KEYS - select KERNEL_DEVPTS_MULTIPLE_INSTANCES - select KERNEL_POSIX_MQUEUE + select PACKAGE_kmod-udptunnel4 help - Select needed kernel options for Docker. Options include - cgroups, namespaces and other miscellaneous options. - see also https://github.com/docker/engine/blob/master/contrib/check-config.sh + Selects kernel options for the Overlay network feature. + Includes udptunnel4 - config DOCKER_SECCOMP - bool "Enable support for seccomp in Docker" + config DOCKER_NET_ENCRYPT + bool "Enable encrypted networking kernel support" + depends on DOCKER_NET_OVERLAY default n - select KERNEL_SECCOMP - select PACKAGE_libseccomp + select PACKAGE_kmod-ipsec + select PACKAGE_kmod-ipsec4 + select PACKAGE_kmod-crypto-gcm + select PACKAGE_kmod-crypto-ghash help - Build Docker with support for seccomp filters. - Select libseccomp which also pulls-in the needed kernel features. + Select needed kernel options for encrypted networking support. - config DOCKER_RES_SHAPE - bool "Enables support for resource shaping" + config DOCKER_NET_MACVLAN + bool "Enables macvlan kernel support" default n - select KERNEL_MEMCG_SWAP - select KERNEL_MEMCG_SWAP_ENABLED - select KERNEL_BLK_DEV_THROTTLING - select KERNEL_CFQ_GROUP_IOSCHED - select KERNEL_CGROUP_PERF - select KERNEL_FAIR_GROUP_SCHED - select KERNEL_CFS_BANDWIDTH - select KERNEL_RT_GROUP_SCHED - - menu "Network" - config DOCKER_NET_OVERLAY - bool "Enables the Overlay network feature" - default n - select PACKAGE_kmod-udptunnel4 - help - Selects kernel options for the Overlay network feature. - Includes udptunnel4 + select PACKAGE_kmod-macvlan + select PACKAGE_kmod-dummy - config DOCKER_NET_ENCRYPT - bool "Enable encrypted networking kernel support" - depends on DOCKER_NET_OVERLAY - default n - select PACKAGE_kmod-ipsec - select PACKAGE_kmod-ipsec4 - select PACKAGE_kmod-crypto-gcm - select PACKAGE_kmod-crypto-ghash - help - Select needed kernel options for encrypted networking support. - - config DOCKER_NET_MACVLAN - bool "Enables macvlan kernel support" - default n - select PACKAGE_kmod-macvlan - select PACKAGE_kmod-dummy + config DOCKER_NET_TFTP + bool "Enable ftp/tftp client kernel support" + default n + select PACKAGE_kmod-nf-nathelper + select PACKAGE_kmod-nf-nathelper-extra +endmenu - config DOCKER_NET_TFTP - bool "Enable ftp/tftp client kernel support" - default n - select PACKAGE_kmod-nf-nathelper - select PACKAGE_kmod-nf-nathelper-extra - endmenu +menu "Storage" + depends on PACKAGE_docker-ce - menu "Storage" - config DOCKER_STO_EXT4 - bool "Enables support for ext3 or ext4 as the backing filesystem" - default n - select KERNEL_EXT4_FS_POSIX_ACL + config DOCKER_STO_EXT4 + bool "Enables support for ext3 or ext4 as the backing filesystem" + default n + select KERNEL_EXT4_FS_POSIX_ACL - config DOCKER_STO_BTRFS - bool "Enables support for btrfs as the backing filesystem" - default n - select PACKAGE_kmod-fs-btrfs - select KERNEL_BTRFS_FS_POSIX_ACL - endmenu + config DOCKER_STO_BTRFS + bool "Enables support for btrfs as the backing filesystem" + default n + select PACKAGE_kmod-fs-btrfs + select KERNEL_BTRFS_FS_POSIX_ACL endmenu