报错:[Errno 2] No such file or directory: 'dmidecode': 'dmidecode'
docker容器内执行dmidecode命令出现
原因:容器内没有dmidecode工具
解决:
将宿主机的如下两个目录挂载到容器中
1. /sbin/dmidecode -- 这个目录是dmidecode程序的目录,如果不挂载那么容器中识别不了dmidecode命令
2. /dev/mem -- dmidecode调用时会使用到mem这个文件,如果不挂载会找不到文件
3. 还需要在启动时增加 --privileged 这个参数,让容器获得近似于宿主机root的权限
启动:
docker run -itd --privileged -v /sbin/dmidecode:/sbin/dmidecode -v /dev/mem:/dev/mem -p 端口:端口 --name 容器名 镜像名:版本号 /bin/bash