美文网首页
podman的安装和使用

podman的安装和使用

作者: MNBVCXZASDFG | 来源:发表于2022-02-14 19:20 被阅读0次

    1.podman简介

    Podman 原来是 CRI-O 项目的一部分,后来被分离成一个单独的项目叫 libpod。Podman 的使用体验和 Docker 类似,不同的是 Podman 没有 daemon。以前使用 Docker CLI 的时候,Docker CLI 会通过 gRPC API 去跟 Docker Engine 说「我要启动一个容器」,然后 Docker Engine 才会通过 OCI Container runtime(默认是 runc)来启动一个容器。这就意味着容器的进程不可能是 Docker CLI 的子进程,而是 Docker Engine 的子进程。

    Podman 比较简单粗暴,它不使用 Daemon,而是直接通过 OCI runtime(默认也是 runc)来启动容器,所以容器的进程是 podman 的子进程。这比较像 Linux 的 fork/exec 模型,而 Docker 采用的是 C/S(客户端/服务器)模型。与 C/S 模型相比,fork/exec 模型有很多优势,比如:

    系统管理员可以知道某个容器进程到底是谁启动的。

    如果利用 cgroup 对 podman 做一些限制,那么所有创建的容器都会被限制。

    SD_NOTIFY : 如果将 podman 命令放入 systemd 单元文件中,容器进程可以通过 podman 返回通知,表明服务已准备好接收任务。

    socket 激活 : 可以将连接的 socket 从 systemd 传递到 podman,并传递到容器进程以便使用它们。

    2 podman安装和配置

    详细安装可查看官网指南,地址:https://podman.io/getting-started/installation
    以ubuntu 21.10为例:

      sudo apt-get -y install podman
    

    就安装成功了,并设置为开机启动,只是这时你会发现podman pull 无法使用,也无法下载 ,这时需要对pod运行相应的配置

    2.1 podman配置

    podma配置文件路径:/etc/containers/registries.conf

      sudo vim /etc/containers/registries.conf
    

    在文档后面增加以下内容:

       [registries.search]
    registries = ['registry.access.redhat.com',
                  'registry.redhat.io',
                  'docker.io']
    unqualified-search-registries = ["registry.fedoraproject.org",
          "registry.access.redhat.com",
          "registry.centos.org",
          "docker.io"]
    
    

    才能使用posman pull 镜像

    2 使用命令

    大部分的命令与docker使用相差不大
    查看容器

       podman ps
    
    CONTAINER ID  IMAGE                           COMMAND  CREATED      STATUS             PORTS                   NAMES
    87dbbe25253c  docker.io/library/mysql:latest  mysqld   2 hours ago  Up 20 minutes ago  0.0.0.0:3306->3306/tcp  mysql
    

    查看镜像

       podman images
    
    REPOSITORY                        TAG     IMAGE ID      CREATED      SIZE
    docker.io/portainer/portainer-ce  latest  ed396c816a75  5 days ago   280 MB
    docker.io/library/mysql           latest  d1dc36cf8d9e  2 weeks ago  525 MB
    docker.io/library/redis           latest  f1b6973564e9  2 weeks ago  116 MB
    
    

    其它的命令跟docker差不多使用

    相关文章

      网友评论

          本文标题:podman的安装和使用

          本文链接:https://www.haomeiwen.com/subject/yorhlrtx.html