侧边栏壁纸
  • 累计撰写 23 篇文章
  • 累计创建 9 个标签
  • 累计收到 8 条评论

目 录CONTENT

文章目录

Podman容器使用

小杨学JAVA
2024-09-15 / 0 评论 / 2 点赞 / 8 阅读 / 9863 字 / 正在检测是否收录...
温馨提示:
"请尊重网络安全,避免恶意攻击,让我们共同维护良好的网络环境。"

从11月15日起,Docker的付费订阅中Pro和Team的价格都将大幅上调:Pro从原来的5美元每月激增到9美元每月,直接涨了80%;而Team也从之前的9美元每月来到15美元每月,涨价66.7%。只有Business保持此前的24美元每月不变。

同时,免费Docker Personal订阅将不再包括Build Cloud分钟数,从支持三个Scout仓库转为一个,并且将限制为一个私人Docker
Hub容器注册表仓库,存储空间为2 GB。

作为个人我选择用Podman来替换使用.

Podman(全称 POD 管理器)是一款用于开发、管理和运行容器的开源工具。Podman 由红帽工程师联合开源社区一同开发,它可利用 lipod 库来管理整个容器生态系统。 

Podman 采用无守护进程的包容性架构,为容器管理提供了一个易于使用且安全至上的选择。借助其配套工具和功能(如 BuildahSkopeo),开发人员可以对容器环境进行定制以符合自己的需求。开发人员还可以利用 Podman Desktop,这是一个针对在本地环境中使用 Podman 的图形用户界面(GUI)。

用户可以在不同的 Linux®发行版本上运行 Podman,如红帽企业 LinuxFedoraCentOSUbuntu。 

Podman 的功能超出了 Docker 兼容性,其中之一就是 Kubernetes 集成(解析和生成 Kubernetes 清单的能力)。此功能提供了额外的便利性和灵活性,使您能够轻松地在 Kubernetes 集群中部署和管理 Podman 工作负载,或将现有工作负载从 Kubernetes 集群无缝传输到 Podman 安装。

1.Podman安装(这边我用的ubuntu和centos主要)

Ubuntu
  1. 更新软件包列表

sudo apt-get update
  1. 安装软件包

sudo apt-get -y install podman
  1. 验证安装

podman --version
CentOS/RHEL
  1. 启用 Kubic 项目的仓库(对于 RHEL,首先需要启用 EPEL 仓库):

sudo dnf -y install dnf-plugins-core

sudo dnf -y copr enable rhcontainerbot/container-selinux

sudo dnf -y module disable container-tools:rhel8

sudo dnf -y module enable container-tools:3.0

sudo dnf -y install podman
  1. 验证安装

podman --version

2.podman的一些命令基本和docker区别不大

一、容器管理

  1. podman run [OPTIONS] IMAGE [COMMAND] [ARG...]

    • 备注:创建并运行一个容器。可以指定容器的镜像、运行参数、启动命令等。

  2. podman ps

    • 备注:列出正在运行的容器。类似 Docker 的docker ps

  3. podman stop [CONTAINER_IDS...]

    • 备注:停止一个或多个容器。通过容器 ID 或名称来指定要停止的容器。

  4. podman start [CONTAINER_IDS...]

    • 备注:启动一个或多个已停止的容器。可以重新启动之前停止的容器。

  5. podman restart [CONTAINER_IDS...]

    • 备注:重启一个或多个容器。方便快速重新启动容器。

  6. podman rm [CONTAINER_IDS...]

    • 备注:删除一个或多个容器。删除不再需要的容器。

二、镜像管理

  1. podman pull IMAGE

    • 备注:从镜像仓库中获取指定的镜像。

  2. podman images

    • 备注:列出本地的镜像。查看已下载的镜像列表。

  3. podman rmi [IMAGE_IDS...]

    • 备注:删除一个或多个镜像。清理不需要的镜像以释放空间。

三、其他常用命令

  1. podman exec [OPTIONS] CONTAINER COMMAND [ARG...]

    • 备注:在运行中的容器内执行命令。可以进入容器进行一些操作或调试。

  2. podman inspect [CONTAINER_IDS/IMAGE_IDS...]

    • 备注:查看容器或镜像的详细信息。获取更多关于容器或镜像的配置和状态信息。

  3. podman volume create [OPTIONS] [VOLUME_NAME]

    • 备注:创建一个数据卷。用于在容器之间共享数据或持久化存储数据。

  4. podman volume ls

    • 备注:列出所有数据卷。查看已创建的数据卷。

  5. podman volume rm [VOLUME_NAMES...]

    • 备注:删除一个或多个数据卷。清理不再需要的数据卷。

2.podman-compoce

podman-compose是用于在 Podman 环境中管理多容器应用的工具,类似于 Docker Compose。以下是一些关于 podman-compose的常见用法及备注:

一、安装

不同的操作系统安装方式可能有所不同。一般可以通过包管理器进行安装。

安装方法百度都可以找到,这里就不写了有需要的可以评论区联系

二、基本命令

  1. podman-compose up

    • 备注:启动一组定义在 podman-compose.yml 文件中的容器。它会按照依赖关系依次创建和启动容器。如果容器已经在运行,此命令会重新启动它们并更新配置。

  2. podman-compose down

    • 备注:停止并删除由 podman-compose 管理的一组容器以及相关的网络和卷。这是一种快速清理环境的方法。

  3. podman-compose ps

    • 备注:列出正在运行的由 podman-compose 管理的容器。显示容器的名称、状态、端口映射等信息。

  4. podman-compose logs [SERVICE...]

    • 备注:查看指定服务(一个或多个容器)的日志输出。如果不指定服务名称,则会显示所有容器的日志。

  5. podman-compose build [SERVICE...]

    • 备注:构建或重新构建指定的服务容器。如果不指定服务名称,则会构建所有服务的容器。这通常在更改了服务的镜像构建配置或源代码后使用。

三、配置文件(podman-compose.yml)(这里安装一个halo博客)

services:
  halo:
    image: registry.fit2cloud.com/halo/halo:2.19
    container_name: halo
    restart: on-failure:3
    network_mode: "host"
    volumes:
      - ./:/root/.halo2
    command:
      # 修改为自己已有的 MySQL 配置
      - --spring.r2dbc.url=r2dbc:pool:mysql://localhost:3306/halo
      - --spring.r2dbc.username=root
      - --spring.r2dbc.password=123456
      - --spring.sql.init.platform=mysql
      # 外部访问地址,请根据实际需要修改
      - --halo.external-url=https://www.xycs1.cn/
      # 初始化的超级管理员用户名
      - --halo.security.initializer.superadminusername=admin
      # 初始化的超级管理员密码
      - --halo.security.initializer.superadminpassword=12345678
      # 端口号 默认8090
      - --server.port=8090
networks:
    halo_network:

然后再这个文件所在的目录输入命令运行 podman-compose up -d

然后就会开始下载镜像安装容器

(下面这个就是镜像和容器)

下面这个就是安装好的博客(里面数据都是从前面恢复进去的)

至此完结

2
L
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区