Docker for Mac有一个GUI界面,用于设置托管容器的Hypervisor的cpu,ram和swap值。通过打开泊坞窗菜单并转到首选项 - >可以看到所有这三个设置。高级。
此外,可以从docker info
命令的输出中解析cpu和ram设置,但不会在那里列出交换信息。我也找不到任何其他docker cli实用程序来输出Docker for Mac的交换设置信息。
如何通过命令行工具获取此交换设置信息?
答案 0 :(得分:0)
Docker for Mac将设置存储在位于~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/config.iso
的ISO文件中。
如果Docker for Mac正在运行,则此文件将被使用,无法使用hdiutil
挂载,因此建议使用以下命令序列来获取交换设置:
cp ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/config.iso /tmp/config.iso
# Mount the iso image
hdiutil mount /tmp/config.iso 2>&1 > /dev/null
# Parse the swap information from the config file (json format) using python
cat /Volumes/config/config | python -c "import sys, json; print json.load(sys.stdin)['swap']['entries']['size']['content']"
# Unmount the iso image
hdiutil eject /Volumes/config 2>&1 > /dev/null
rm /tmp/config.iso
注意:如果Docker for Mac未运行,则无需从原始位置复制iso文件,只需将其安装到位即可。如果您在Docker for Mac运行时尝试将config.iso文件安装在其原始位置,则会出现如下错误:
hdiutil: mount failed - Resource temporarily unavailable
输出示例如下:
2048M