例如,假设我有一个需要NET_ADMIN功能的容器(例如,keepalived作为容器)。
如何在运行容器时检查实际提供的功能,以便我可以添加日志/抛出错误?
答案 0 :(得分:2)
您可以命令检查功能
$ capsh --print | grep "Current:" | cut -d' ' -f3 | grep -q cap_net_admin
$ echo $?
0
$ capsh --print | grep "Current:" | cut -d' ' -f3 | grep -q cap_net_admins
$ echo $?
1
下面的命令显示容器的所有可用功能
$ capsh --print | grep"当前:" | cut -d' ' -F3 cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_kill,cap_setgid,CAP_SETUID,cap_setpcap,CAP_NET_BIND_SERVICE,CAP_NET_ADMIN,CAP_NET_RAW,cap_sys_chroot,cap_mknod,cap_audit_write,cap_setfcap + EIP