对于为容器部署从基于 Ubuntu 的 Linux 发行版切换到基于 RHEL 的 Linux 发行版的所有人来说,您可能已经意识到 Docker 并不是您的新平台的最简单或最佳选择。幸运的是,Podman 默认安装在大多数基于 RHEL 的发行版上,因此您可以直接跳到使用容器。
但是你为什么要学习一个全新的工具呢?幸运的是,Podman 几乎是 Docker 的直接 1:1 替代品,所以如果你知道一个,你可以使用另一个。我已经帮助您迈出了使用 Podman 的第一步,这次我们将通过创建和管理卷来扩展它。
为什么数量很重要?简单——持久存储。例如,您部署一个使用数据的容器。一切都很好,直到灾难发生。容器失败并随之删除您的数据。你不想要那个。
为了避免这样的灾难,您将使用卷部署这些容器。通过这样做,数据被保存到持久状态,因此如果容器出现故障,数据仍然是安全的,并且可以被不同的容器使用。相信我,您希望将卷用于任何依赖数据的容器。如果您或您的公司依赖于该容器使用的数据,则尤其如此。
话虽如此,您如何在 Podman 中处理卷?让我们来了解一下。
使用 Podman 创建和管理卷需要什么
为此,您唯一需要的是安装了 Podman 的 Linux 发行版。这可能是 RHEL、Rocky Linux、AlmaLinux 或 CentOS。而已。
如何使用 Podman 创建卷
我们需要做的第一件事是创建一个卷。登录到您的 Linux 发行版并打开一个终端窗口。假设我们要为 NGINX 容器创建一个卷。使用以下命令创建该卷:
podman volume create nginx-volume
输出应该很简单:
nginx-volume
您可以使用以下命令验证卷创建:
podman volume ls
上面的命令应该打印出如下内容:
DRIVER VOLUME NAME
local nginx-volume
要获取更多信息,您可以发出以下命令:
podman volume inspect nginx-volume
上面的命令将打印出如下内容:
[
{
"Name": "nginx-volume",
"Driver": "local",
"Mountpoint": "/home/jack/.local/share/containers/storage/volumes/nginx-volume/_data",
"CreatedAt": "2023-09-26T12:52:36.125241042-04:00",
"Labels": {},
"Scope": "local",
"Options": {},
"MountCount": 0,
"NeedsCopyUp": true,
"NeedsChown": true
}
]
如何在 Podman 中使用卷
现在我们已经创建了卷,让我们将它与 NGINX 容器部署一起使用。在我们开始之前,让我们玩得开心,为 NGINX Web 服务器创建一个新的 index.html 文件。使用以下命令切换到卷目录:
cd /home/$USER/.local/share/containers/storage/volumes/nginx-volume/_data
现在,让我们使用以下命令创建 index.html:
nano index.html
在该文件中,粘贴以下内容:
<h2>Hello, a5idc!</h2>
保存并关闭文件。
使用以下命令部署附加到卷的容器:
podman run -d -p 8080:80 -v nginx-volume:/usr/share/nginx/html --name nginx-volumetest nginx:latest
我们使用上述命令所做的就是将我们的 nginx-volume 映射到 NGINX 容器内的 /usr/share/nginx/html 目录。现在,如果我们将 Web 浏览器指向http://IP:8080,其中 IP 是托管服务器的 IP 地址,我们应该会看到我们的“Hello, a5idc!” 信息。
如果您看到错误,则需要使用以下两个命令打开防火墙:
sudo firewall-cmd --permanent --add-port 8080/tcp
sudo firewall-cmd --reload
现在,您重新加载网页,您可以看到网页提示信息“Hello, a5idc!” 。
现在,如果您的容器发生故障,卷中的数据将保持不变。如果您需要删除卷,只需发出以下命令:
podman volume rm nginx-volume
这就是使用 Podman 管理卷的全部内容。对于希望为其容器部署保留持久数据的任何人来说,这是一个至关重要的功能。
注意:现在服务器报价出炉,价格很低
1、腾讯云:限时 2860 元无门槛代金券:点击一键领取。
2、腾讯云最新优惠活动,3年/5年服务器限时抢购:点击前往。
3、阿里云:限时 2000 元无门槛代金券:点击一键领取。