如何在 Ubuntu 20.04 上使用 LXD 容器
Linux 容器虚拟化 (LXD) 与虚拟机(例如 KVM)类似,但与虚拟机相比速度更快、效率更高且更轻。适用于 Ubuntu、Centos、Arch Linux 等操作系统的 LXD 容器很容易创建。 LXD 使用相同的 Linux 内核,这减少了添加此类内核的开销。
在本文中,我们将展示LXD在Ubuntu 20.04服务器上的安装和配置过程。此外,我们还将解释如何启动 LXD 容器以及如何在容器内运行命令。
在 Ubuntu 20.04 上安装 LXD
要在 Ubuntu 20.04 服务器上安装 LXD,只需更新存储库的缓存并使用 apt 包管理器进行安装,如下所示。
sudo apt update && sudo apt upgrade -y
使用如下所示的命令安装 LXD。
sudo apt install lxd -y
或者,使用 snap 命令安装它。
sudo snap install lxd --channel=4.0/stable
将用户添加到lxd组
建议将您当前登录的用户添加到 lxd 组中,在我的例子中,该用户名为“ubuntu”。这使得 LXC 容器的使用和维护更加容易。出于目的运行如下所示的命令。
sudo adduser ubuntu lxd
要验证用户是否已添加到 lxd 组,请运行如下命令。
id
为存储后端安装 zfs
作为存储后端,zfs 文件系统主要用于 LXD。要安装 zfs,请运行如下所示的命令。
sudo apt update
sudo apt install zfsutils-linux -y
配置 LXD
要在 Ubuntu 20.04 服务器上配置 lxd,请使用上述 zfs 运行如下所示的命令。
sudo lxd init
获取可用 LXD 容器镜像的列表
简单地说,您可以检查内置的 LXD 映像列表,运行如下所示的命令
lxc image list images:
lxc image list images: | grep -i centos
例如,让我们检查该命令的输出。
lxc image list images: | grep -i ubuntu
创建 LXD 容器
LXD 容器是使用 lxc 命令创建的。为此,请使用带有映像名称或远程列表的 lxc 命令。使用如下所示的命令检查远程列表。
lxc remote list
要使用远程作为 ubuntu 创建 lxd 容器,请运行如下命令。
语法:
lxc launch ubuntu:20.04 container_name
在这里,我们使用如下所示的命令创建一个容器名称为“test”、操作系统为“ubuntu 20.04”的容器。
lxc launch ubuntu:20.04 test
将下载容器映像并存储映像的缓存,以便在再次需要时使用相同的映像。成功执行上述命令后,您将看到如下所示的输出。
输出:
要检查容器的详细信息,如名称、状态、ipv4 和 ipv6 地址、类型和快照,请运行如下所示的命令。
lxc ls
在容器内运行命令
成功创建容器后,您可以在其中运行命令。可以使用简单的 lxc 命令或输入 bash 来完成。有关更多详细信息,请检查如下所示的命令。
语法:
$lxc exec 容器名称 -- 命令
例子 :
lxc exec test apt update
对于 bash shell,运行如下所示的命令。
语法:
$lxc exec container_name bash
例子 :
lxc exec test bash
启动、停止和删除 LXD 容器
要启动 LXD 容器,请运行如下所示的命令。
$lxc 启动容器名称
例子 :
lxc start test
要停止 LXD 容器,请运行如下命令。
$lxc stop container_name
例子 :
lxc stop test
要删除 LXD 容器,请运行如下命令。
$lxc 删除container_name
例子 :
lxc delete test
结论
在本文中,您学习了如何安装和配置 LXD。我还向您展示了创建 lxd 容器并通过容器内的 bash shell 运行命令的过程。