你如何在Dockerfile中做dpkg-reconfigure wireshark-common
?
我的Docker文件包含:
RUN apt-get install wireshark --yes
但是--yes
不影响dpkg-reconfigure wireshark-common
步骤,因此对我来说,如何对屏幕上的问题Should non-superusers be able to capture packets?
回答“是”或“否”是不明显的。
答案 0 :(得分:3)
尝试使用yes
命令。
RUN yes | dpkg-reconfigure wireshark-common
你可以做的另一个尝试是:
RUN echo "y" | dpkg-reconfigure wireshark-common
现在不确定wireshark在dpkg-reconfigure上要求的是什么......但是使用这种技术你可以发送一个“y”或“1”或者你需要的任何东西。
另一种可能的解决方案基于您的评论:
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y wireshark
使用最后一个,您将跳过任何交互式安装后配置步骤。
答案 1 :(得分:0)
有了第一个答案,我无法以非root用户身份运行tshark。 这是我的解决方案,通过“ dpkg-reconfigure wirehark-common”接受“是”答案,因此您可以以普通用户身份运行tshark:
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y tshark
RUN yes yes | DEBIAN_FRONTEND=teletype dpkg-reconfigure wireshark-common
RUN usermod -a -G wireshark yourUserName
用允许运行tshark的用户替换“ yourUserName”。