Podman的hello world入门

前言

Podnam是一个符合OCI,用于在 Linux® 系统上开发、提供了与 Docker 等类似的功能来管理容器。管理和运行容器开源工具。 Podman 最初由 Red Hat® 工程师与开源社区一起开发。Podman使用 libpod 库管理整个容器生态系统。

安装

如果你使用Macos, 可以使用homebrew安装:

bash 复制代码
brew install podman

安装之后就可以创建和启动Podnam虚拟机:

bash 复制代码
podman machine init
podman machine start

如果你使用Debian 或者 ubuntu, 可以使用apt-get命令安装:

bash 复制代码
sudo apt-get install runc -y
sudo apt-get -y install podman

其他系统可能参考podman安装页面

注意:对于 Windows 和 Mac,podman 需要一个虚拟机来部署容器。

配置

默认情况下,Podman 配置有两个容器注册表。

我们可以在·/etc/containers/registries.conf·看到

但是为了方便我们构建基于Dockerfile的景象,我们需要在没有明确容器注册表的时候默认拉取docer.io的注册表,我们可以在·/etc/containers/registries.conf·或者·$HOME/.config/containers/registries.conf·设置unqualified-search-registries

bash 复制代码
unqualified-search-registries = ["docker.io"]

存储

每个系统用户都有自己的容器存储地址。这意味着,如果您尝试从不同的用户登录中提取镜像,它将从远程注册表而不是本地映像中提取镜像。

容器管理

拉取容器:

bash 复制代码
podman pull docker.io/nginx

运行容器:

bash 复制代码
podman  run --name docker-nginx -p 8080:80 docker.io/nginx

如果你绑定1024一下的端口,你需要使用root权限:

bash 复制代码
sudo podman run --name docker-nginx -p 80:80 docker.io/nginx

对于root用户,容器将会存储在·/var/lib/containers/storag·的文件夹中。 对于非root用户,容器将会存储在·$HOME/.local/share/containers/storage·的文件夹中。

参考资料

  1. What is Podman?
  2. Podman 初学者指南(上)
  3. Podman "Error: no registries found in registries.conf, a registry must be provided" while logging/pulling from docker.io
  4. What is Podman?
相关推荐
唯情于酒7 小时前
Docker学习
学习·docker·容器
喵叔哟8 小时前
20.部署与运维
运维·docker·容器·.net
运维栈记13 小时前
虚拟化网络的根基-网络命名空间
网络·docker·容器
Hellc00714 小时前
Docker网络冲突排查与解决方案:完整指南
网络·docker·容器
hanyi_qwe14 小时前
发布策略 【K8S (三)】
docker·容器·kubernetes
眠りたいです15 小时前
Docker核心技术和实现原理第二部分:docker镜像与网络原理
运维·网络·docker·容器
Mr. Cao code16 小时前
Docker数据管理:持久化存储最佳实践
java·docker·容器
Cyber4K17 小时前
【Kubernetes专项】DockerFile、数据持计划、网络模式及资源配额
运维·网络·云原生·容器·kubernetes
鲨莎分不晴18 小时前
Docker 网络深度解析:打破容器的“孤岛效应”
网络·docker·容器
Zsr102318 小时前
K8s核心组件Pod:基础篇
云原生·容器·kubernetes