我一直在尝试使用here所述的静态二进制文件在新平台(Tizen 4.0 + ARM64)上移植Docker CE,
但是,即使我满足上述链接中描述的所有先决条件,在尝试运行docker daemon时,我仍然收到此错误:
WARN[2018-10-04T14:14:57.890120101+09:00] Running modprobe bridge br_netfilter failed with message: modprobe: WARNING: Module bridge not found in directory /lib/modules/4.9.59-g70b545c-dirty modprobe: WARNING: Module br_netfilter not found in directory /lib/modules/4.9.59-g70b545c-dirty, error: exit status 1
WARN[2018-10-04T14:14:57.905153370+09:00] Running modprobe nf_nat failed with message: modprobe: WARNING: Module nf_nat not found in directory /lib/modules/4.9.59-g70b545c-dirty, error: exit status 1
WARN[2018-10-04T14:14:57.920222485+09:00] Running modprobe xt_conntrack failed with message: modprobe: WARNING: Module xt_conntrack not found in directory /lib/modules/4.9.59-g70b545c-dirty, error: exit status 1
Error starting daemon: Error initializing network controller: Error creating default "bridge" network: package not installed
反正有解决此问题的方法吗?
否则,是否有其他方法可以将docker移植到新平台上(在本例中为Tizen 4.0 + ARM64)。
关键说明:该平台使用linux内核,但不支持apt-get命令等许多典型的Linux平台功能。
任何帮助将不胜感激。在此先感谢:)
答案 0 :(得分:0)
从您的错误消息中,您的系统缺少许多与网络相关的内核模块,从它的外观来看,它至少在寻找:网桥,br_netfilter,nf_nat,xt_conntrack。您需要移植这些缺少的内核模块,或者重新编译内核以包含相关模块。
答案 1 :(得分:0)
Docker本身需要很多先决条件才能在新平台上运行。 here中提到了其中一些。
除了满足先决条件外,还必须满足特定的内核要求,并且万一内核不能满足所有这些要求,还必须对内核进行相应的修补以使事情正常运行。
这是内核defconfig,必须启用它才能使docker运行-
CONFIG_CGROUP_DEVICE = Y,CONFIG_CPUSETS = Y,CONFIG_BLK_CGROUP = Y,CONFIG_CGROUPS = Y,CONFIG_CGROUP_CPUACCT = Y,CONFIG_CGROUP_DEVICE = Y,CONFIG_CGROUP_FREEZER = Y,CONFIG_CGROUP_SCHED = Y, - CONFIG_CGROUP_PERF = Y,CONFIG_CGROUP_HUGETLB = Y,CONFIG_NET_CLS_CGROUP = Y,CONFIG_CGROUP_NET_PRIO = Y,CONFIG_CFS_BANDWIDTH = Y,CONFIG_CGROUP_PIDS = Y,CONFIG_BLK_CGROUP = Y,CONFIG_NETFILTER_XT_MATCH_ADDRTYPE = Y,CONFIG_NETFILTER_XT_MATCH_CONNTRACK = Y,CONFIG_NETFILTER_XT_MATCH_IPVS = Y,CONFIG_NF_NAT_IPV4 = Y,CONFIG_IP_NF_FILTER = Y,CONFIG_IP_NF_TARGET_MASQUERADE = Y,CONFIG_IP_NF_NAT = Y,CONFIG_NF_NAT = Y,CONFIG_NF_NAT_NEEDED = Y,CONFIG_POSIX_MQUEUE = Y ,CONFIG_MEMCG = y,CONFIG_MEMCG_SWAP = y,CONFIG_MEMCG_KMEM = y,CONFIG_MEMCG_SWAP_ENABLED = y,CONFIG_BRIDGE = y,CONFIG_BRIDGE_NETFILTER = y,CONFIG_VXLAN = y,CONFIG_CRYPTO = y,CONFIG_CRYP_Y,CONFIG_CRYP_SEQ_PRY_CRYPTO_AE = y,CONFIG_XFRM_USER = y,CONFIG_XFRM_ALGO = y,CONFIG_INET_ESP = y,CONFIG_INET_XFRM_MODE_TRANSPORT = y,CONFIG_IPVLAN = y,C ONFIG_MACVLAN = y,CONFIG_DUMMY = y,“:CONFIG_NF_NAT_FTP = y,CONFIG_NF_CONNTRACK_FTP = y,CONFIG_NF_NAT_TFTP = y,CONFIG_NF_CONNTRACK_TFTP = y,CONFIG_OVERLAY_FS = y,CONG_AUFS_FS = y,CONFIG_B_FS_Y_CONFIG_BTRFS = Y,CONFIG_BTRFS CONFIG_NAMESPACES = y,CONFIG_NET_NS = y,CONFIG_PID_NS = y,CONFIG_IPC_NS = y,CONFIG_UTS_NS = y,CONFIG_KEYS = y,CONFIG_VETH = y,CONFIG_USER_NS = y,CONFIG_SECCOMP = y,CONFIG_BLK_DEV_ROUP_ED_FIG_UP_EDR = ED,CONFIG_UP_EDR y,CONFIG_RT_GROUP_SCHED = y,CONFIG_IP_VS = y,CONFIG_IP_VS_NFCT = y,CONFIG_IP_VS_RR = y,CONFIG_EXT4_FS = y,CONFIG_EXT4_FS_POSIX_ACL = y,CONFIG_EXT4_FS_SECURITY = y
P.S。 -要使docker运行,可能不需要上面的某些defconfigs。但是,启用所有这些功能可确保您扩展了对docker提供的所有功能的支持。