如何配置实例¶
您可以通过设置实例属性、实例选项或添加和配置设备来配置实例。
请参阅以下部分以获取说明。
注意
要存储和重复使用不同的实例配置,请使用配置文件。
配置实例选项¶
您可以在创建实例时指定实例选项。或者,您可以在创建实例后更新实例选项。
使用incus config set
命令更新实例选项。指定实例名称以及实例选项的键和值
incus config set <instance_name> <option_key>=<option_value> <option_key>=<option_value> ...
向实例发送 PATCH 请求以更新实例选项。指定实例名称以及实例选项的键和值
incus query --request PATCH /1.0/instances/<instance_name> --data '{"config": {"<option_key>":"<option_value>","<option_key>":"<option_value>"}}'
有关更多信息,请参阅PATCH /1.0/instances/{name}
。
有关可用选项的列表以及哪些选项可用于哪些实例类型的详细信息,请参阅实例选项。
例如,更改容器的内存限制
要将内存限制设置为 8 GiB,请输入以下命令
incus config set my-container limits.memory=8GiB
要将内存限制设置为 8 GiB,请发送以下请求
incus query --request PATCH /1.0/instances/my-container --data '{"config": {"limits.memory":"8GiB"}}'
配置实例属性¶
要创建实例后更新实例属性,请使用incus config set
命令以及--property
标志。指定实例名称以及实例属性的键和值
incus config set <instance_name> <property_key>=<property_value> <property_key>=<property_value> ... --property
使用相同的标志,您也可以像取消设置配置选项一样取消设置属性
incus config unset <instance_name> <property_key> --property
您还可以使用以下命令检索特定属性值
incus config get <instance_name> <property_key> --property
要通过 API 更新实例属性,请使用与配置实例选项相同的机制。唯一的区别是属性位于配置的根级别,而选项位于config
字段下。
因此,要设置实例属性,请向实例发送 PATCH 请求
incus query --request PATCH /1.0/instances/<instance_name> --data '{"<property_key>":"<property_value>","<property_key>":"property_value>"}}'
要取消设置实例属性,请发送一个包含您想要的完整实例配置的 PUT 请求,但要取消设置的属性除外。
有关更多信息,请参阅PATCH /1.0/instances/{name}
和PUT /1.0/instances/{name}
。
配置设备¶
通常,可以在容器运行时添加或删除设备。虚拟机支持某些设备类型的热插拔,但并非所有设备都支持。
有关可用设备类型及其选项的列表,请参阅设备。
注意
每个设备条目都由一个对实例唯一的名称标识。
配置文件中的设备按配置文件分配给实例的顺序应用于实例。在实例配置中直接定义的设备最后应用。在每个阶段,如果来自较早阶段的设备具有相同的名称,则整个设备条目将被最新定义覆盖。
设备名称限制为最多 64 个字符。
要为您的实例添加和配置实例设备,请使用incus config device add
命令。
指定实例名称、设备名称、设备类型以及可能存在的设备选项(取决于设备类型)
incus config device add <instance_name> <device_name> <device_type> <device_option_key>=<device_option_value> <device_option_key>=<device_option_value> ...
例如,要将主机系统上/share/c1
处的存储添加到实例的/opt
路径,请输入以下命令
incus config device add my-container disk-storage-device disk source=/share/c1 path=/opt
要为之前添加的设备配置实例设备选项,请使用incus config device set
命令
incus config device set <instance_name> <device_name> <device_option_key>=<device_option_value> <device_option_key>=<device_option_value> ...
要移除设备,请使用 incus config device remove
命令。有关可用命令的完整列表,请参阅 incus config device --help
。
要为您的实例添加和配置实例设备,请使用相同的修补实例配置机制。设备配置位于配置的 devices
字段下。
指定实例名称、设备名称、设备类型以及可能存在的设备选项(取决于设备类型)
incus query --request PATCH /1.0/instances/<instance_name> --data '{"devices": {"<device_name>": {"type":"<device_type>","<device_option_key>":"<device_option_value>","<device_option_key>":"device_option_value>"}}}'
例如,要将主机系统上/share/c1
处的存储添加到实例的/opt
路径,请输入以下命令
incus query --request PATCH /1.0/instances/my-container --data '{"devices": {"disk-storage-device": {"type":"disk","source":"/share/c1","path":"/opt"}}}'
有关更多信息,请参阅PATCH /1.0/instances/{name}
。
显示实例配置¶
要显示实例的当前配置(包括可写实例属性、实例选项、设备和设备选项),请输入以下命令
incus config show <instance_name> --expanded
要检索实例的当前配置(包括可写实例属性、实例选项、设备和设备选项),请向实例发送 GET 请求
incus query /1.0/instances/<instance_name>
有关更多信息,请参阅 GET /1.0/instances/{name}
。
编辑完整实例配置¶
要编辑完整实例配置(包括可写实例属性、实例选项、设备和设备选项),请输入以下命令
incus config edit <instance_name>
注意
为了方便起见,incus config edit
命令会显示完整配置,包括只读实例属性。但是,您无法编辑这些属性。任何更改都会被忽略。
要更新完整实例配置(包括可写实例属性、实例选项、设备和设备选项),请向实例发送 PUT 请求
incus query --request PUT /1.0/instances/<instance_name> --data '<instance_configuration>'
有关更多信息,请参阅 PUT /1.0/instances/{name}
。
注意
如果您在提供的配置中包含对任何只读实例属性的更改,则这些更改将被忽略。