服务器状态
您通过以下方式连接: ()演示服务器当前运行着 个用户会话,共 个。 演示服务当前处于维护状态,将在几分钟内恢复在线。 您的浏览器无法连接到演示服务器。
这可能是由于您这边防火墙或代理问题(最有可能),也可能是由于网络、电源或其他灾难性服务器端故障。
服务条款
开始
正在创建新实例
分步说明
- 介绍
- 您的第一个实例
- 检查实例
- 停止和删除实例
- 实例配置
- 与实例交互
- 从实例访问文件
- 快照
- 结论
您现在位于运行在远程 Incus 集群上的 Incus 虚拟机内部。
此虚拟机已预装和预配置 Incus。
要开始使用,请按照此分步教程,它将引导您了解 Incus 的主要功能。
或者,只需浏览一下,通过其手册页和--help
选项来发现 Incus!
提示
单击教程中的任何命令,将其复制到终端。
新增:您还可以尝试使用一个 Incus Web 界面!
Incus 基于镜像,可以从不同的镜像服务器加载镜像。在本教程中,我们将使用 images: 服务器。
此 Incus 服务器当前为空,您可以通过以下命令确认:
incus list
首先启动一些实例。
- 使用 Ubuntu 20.04 镜像启动名为“first”的容器
incus launch images:ubuntu/20.04 first
请注意,启动此容器需要几秒钟,因为首先需要下载和解压缩镜像。 - 使用相同的镜像启动名为“second”的容器
incus launch images:ubuntu/20.04 second
启动此容器比启动第一个容器更快,因为镜像已经可用。 - 将第一个容器复制到名为“third”的容器中
incus copy first third
- 使用 Alpine Edge 镜像启动名为“alpine”的容器
incus launch images:alpine/edge alpine
- 使用 Debian 12 镜像启动名为“debian”的虚拟机
incus launch images:debian/12 debian --vm
检查您启动的实例列表
incus list
您会看到除了第三个实例之外,所有实例都在运行。这是因为您通过复制第一个实例创建了第三个实例,但没有启动它。
您可以通过以下命令启动第三个实例:
incus start third
您可以通过以下命令查询有关每个实例的更多信息:
incus info first incus info second incus info third incus info alpine incus info debian
在本教程的剩余部分中,我们不需要所有这些实例,因此让我们清理其中一些。
- 停止第二个实例
incus stop second
- 删除第二个实例
incus delete second
- 删除第三个实例
incus delete third
由于此实例正在运行,因此您会收到一条错误消息,提示您必须先停止它。或者,您可以强制删除它incus delete third --force
您可以为实例设置多个限制和配置选项。有关概述,请参阅 实例配置。
让我们创建另一个实例,并设置一些资源限制。
- 启动一个容器,并将其限制为一个 vCPU 和 192 MiB 内存
incus launch images:ubuntu/20.04 limited -c limits.cpu=1 -c limits.memory=192MiB
- 检查当前配置,并将其与第一个(无限制)实例的配置进行比较
incus config show limited incus config show first
- 检查父系统和两个实例的可用内存和已用内存
free -m incus exec first -- free -m incus exec limited -- free -m
请注意,父系统和第一个实例的总内存相同,因为默认情况下,容器会从其父环境继承资源。另一方面,受限实例只有 192 MiB 可用。 - 检查父系统和两个实例的可用 CPU 数量
nproc incus exec first -- nproc incus exec limited -- nproc
同样,请注意,父系统和第一个实例的数量相同,但受限实例的数量减少了。
您还可以在实例运行时更新配置。
- 为您的实例配置内存限制
incus config set limited limits.memory=128MiB
- 检查配置是否已应用
incus config show limited
- 检查实例可用的内存量
incus exec limited -- free -m
请注意,数字已更改。
让我们与您的实例交互。
- 在您的实例中启动一个交互式 shell
incus exec first -- bash
- 输入一些命令,例如显示有关操作系统的的信息
cat /etc/*release
- 退出交互式 shell
exit
- 重复对您的 alpine 实例执行这些步骤
incus exec alpine -- ash cat /etc/*release exit
- 您可以直接从主机运行命令,而不是登录到实例并在那里运行命令。例如,您可以在实例上安装一个命令行工具并运行它
incus exec first -- apt-get update incus exec first -- apt-get install sl -y incus exec first -- /usr/games/sl
您可以访问实例中的文件并与它们交互。
- 从实例中拉取文件
incus file pull first/etc/hosts .
- 在文件中添加条目
echo "1.2.3.4 my-example" >> hosts
- 将文件推回实例
incus file push hosts first/etc/hosts
- 使用相同的机制访问日志文件
incus file pull first/var/log/syslog - | less q
Incus 支持创建和恢复实例快照。
- 创建一个名为“clean”的快照
incus snapshot create first clean
- 确认快照已创建
incus snapshot list first
- 破坏实例
incus exec first -- rm -Rf /etc /usr
- 确认破坏
incus exec first -- bash
请注意,您无法获得 shell,因为您删除了bash
命令。 - 将实例恢复到快照状态
incus snapshot restore first clean
- 确认一切恢复正常
incus exec first -- bash exit
- 删除快照
incus snapshot delete first clean
我们希望这能为您提供对 Incus、其功能以及易用性的良好介绍。
欢迎您随时使用演示服务,以尝试 Incus 并体验最新的功能。
享受!
反馈
无法创建新实例 无法访问实例
服务器当前已满,请在几分钟后重试。
您已达到最大并发会话数,请等待一些会话过期后再启动更多会话。
由于您未遵守服务条款,因此您已被禁止使用此服务。
发生未知错误。请在几分钟后重试。
您尝试连接到的实例已不存在。