Docker与Docker Compose访问/opt目录结果不一致,且Compose中KubeArmor初始化容器无法生成BPF文件的问题咨询
Docker与Docker Compose访问/opt目录结果不一致,且Compose中KubeArmor初始化容器无法生成BPF文件的问题咨询
我最近碰到一个Docker Compose的问题,折腾了好久没搞定,想请大家帮忙看看:
我有一个包含两个容器的Docker Compose配置,要求第一个容器必须完全执行完毕,第二个容器才能启动。
先跟大家说下单独运行容器的情况:如果我执行这条Docker命令:
docker run -v /opt/kubearmor/BPF:/opt/kubearmor/BPF --privileged kubearmor/kubearmor-init:stable
它会针对当前系统内核编译BPF代码,最终在宿主机的/opt/kubearmor/BPF目录下生成system_monitor.bpf.o文件,这个文件是后续第二个容器要依赖的。
我已经给宿主机的/opt/kubearmor/目录加上了必要的读写权限,单独跑这条命令完全没问题,目标文件能正常生成。
可一旦把这个容器放到Docker Compose里运行,问题就来了——第一个容器始终没法在指定目录生成system_monitor.bpf.o文件。我的docker-compose.yaml配置大概是这样的:
services: kubearmor-init: image: kubearmor/kubearmor-init:stable privileged: true volumes: - /opt/kubearmor/BPF:/opt/kubearmor/BPF entrypoint: ["/bin/sh", "-c", "..."]
有没有大佬知道这是哪里出问题了呀?
备注:内容来源于stack exchange,提问作者Navin Chandra
相关产品推荐
相关产品推荐

