如何管理实例¶
列出现有实例时,您可以看到它们的类型、状态和位置(如果适用)。您可以过滤实例并仅显示您感兴趣的实例。
输入以下命令列出所有实例
incus list
您可以过滤显示的实例,例如按类型、状态或实例所在的集群成员过滤
incus list type=container
incus list status=running
incus list location=server1
您也可以按名称过滤。要列出多个实例,请使用名称的正则表达式。例如
incus list ubuntu.*
输入 incus list --help
查看所有过滤器选项。
查询 /1.0/instances
端点以列出所有实例。您可以使用 递归 以显示有关实例的更多信息
incus query /1.0/instances?recursion=2
您可以 过滤 显示的实例,按名称、类型、状态或实例所在的集群成员过滤
incus query /1.0/instances?filter=name+eq+ubuntu
incus query /1.0/instances?filter=type+eq+container
incus query /1.0/instances?filter=status+eq+running
incus query /1.0/instances?filter=location+eq+server1
要列出多个实例,请使用名称的正则表达式。例如
incus query /1.0/instances?filter=name+eq+ubuntu.*
有关更多信息,请参阅 GET /1.0/instances
。
显示有关实例的信息¶
输入以下命令以显示有关实例的详细信息
incus info <instance_name>
将 --show-log
添加到命令以显示实例的最新日志行
incus info <instance_name> --show-log
启动实例¶
输入以下命令以启动实例
incus start <instance_name>
如果实例不存在或已在运行,您将收到错误。
要启动时立即附加到控制台,请传递 --console
标志。例如
incus start <instance_name> --console
有关更多信息,请参阅 如何访问控制台。
要启动实例,请发送 PUT 请求以更改实例状态
incus query --request PUT /1.0/instances/<instance_name>/state --data '{"action":"start"}'
此查询的返回值包含一个操作 ID,您可以使用它来查询操作的状态
incus query /1.0/operations/<operation_ID>
使用以下查询来监控实例的状态
incus query /1.0/instances/<instance_name>/state
有关更多信息,请参阅 GET /1.0/instances/{name}/state
和 PUT /1.0/instances/{name}/state
。
停止实例¶
输入以下命令以停止实例
incus stop <instance_name>
如果实例不存在或未在运行,您将收到错误。
要停止实例,请发送 PUT 请求以更改实例状态
incus query --request PUT /1.0/instances/<instance_name>/state --data '{"action":"stop"}'
此查询的返回值包含一个操作 ID,您可以使用它来查询操作的状态
incus query /1.0/operations/<operation_ID>
使用以下查询来监控实例的状态
incus query /1.0/instances/<instance_name>/state
有关更多信息,请参阅 GET /1.0/instances/{name}/state
和 PUT /1.0/instances/{name}/state
。
删除实例¶
如果您不再需要实例,可以将其删除。在删除实例之前,它必须处于停止状态。
输入以下命令以删除实例
incus delete <instance_name>
要删除实例,请向实例发送 DELETE 请求
incus query --request DELETE /1.0/instances/<instance_name>
有关更多信息,请参阅 DELETE /1.0/instances/{name}
。
注意
此命令将永久删除实例及其所有快照。
防止意外删除实例¶
有多种方法可以防止意外删除实例
要保护特定实例不被删除,请将实例的
security.protection.delete
设置为true
。有关说明,请参阅 如何配置实例。在 CLI 客户端中,您可以创建一个别名,每次使用
incus delete
命令时,都会提示您进行批准incus alias add delete "delete -i"
重建实例¶
如果您想擦除和重新初始化实例的根磁盘,但保留实例配置,您可以重建实例。
重建仅适用于没有快照的实例。
在重建实例之前,请停止它。
输入以下命令使用不同的镜像重建实例
incus rebuild <image_name> <instance_name>
输入以下命令使用空根磁盘重建实例
incus rebuild <instance_name> --empty
有关 rebuild
命令的更多信息,请参阅 incus rebuild --help
。
要使用不同的镜像重建实例,请向实例的 rebuild
端点发送 POST 请求。例如
incus query --request POST /1.0/instances/<instance_name>/rebuild --data '{"source": {"alias":"<image_alias>","server":"<server_URL>", protocol:"simplestreams"}}'
要使用空根磁盘重建实例,请将源类型指定为 none
incus query --request POST /1.0/instances/<instance_name>/rebuild --data '{"source": {"type":"none"}}'
有关更多信息,请参阅 POST /1.0/instances/{name}/rebuild
。