Podman Desktop とは

URL をコピー

Red Hat のリソース

Podman (pod manager の略) は、コンテナを操作するためのオープンソース・プロジェクトであり、Podman Desktop の基盤となっています。Podman はデフォルトでルートレスコンテナをサポートしており、root 権限の必要性を最小限に抑え、システムの脆弱性のリスクを軽減することでセキュリティを強化します。

Podman は、Kubernetes Pod と同様、コンテナを Pod にグループ化し、まとまって稼働してリソースを共有します。Podman は、コマンドライン・インタフェース (CLI) と libpod ライブラリ (コンテナ、Pod、コンテナイメージ、ボリュームを管理するアプリケーション・プログラミング・インタフェース (API) を提供) を介してこれらの Pod を管理します。

デフォルトでは、Podman は Open Container Initiative (OCI) コンテナを作成し、サポートします。OCI コンテナは、コンテナのランタイムと形式の業界標準を満たすように設計されています。また、Docker 形式のイメージも実行できます。Podman と Docker は互換性があり、Podman は Docker のフル機能を備えた代替手段として使用することも、Docker と連携させることもできます。

Podman Desktop GUI によって、ワークステーションまたはノート PC でコンテナと Pod をローカルで構築、実行、管理、デバッグできます。Kubernetes の有無に関係なく Pod を実行し、複数のコンテナエンジンを管理できます。

コンテナの操作

Podman Desktop を使用すると、任意のレジストリからコンテナイメージを取得できます。さらに、さまざまなコンテナを単一の統合ビューで表示し、マウス操作でコンテナの起動、停止、削除、再起動、エクスポート、デプロイを実行できます。次のことが可能です。

  • Podman Desktop インタフェースを離れることなく、ログを表示し、実行中のコンテナへのシェルアクセスを取得する
  • 独自のコンテナイメージを構築し、任意のレジストリにプッシュする
  • コンテナをグループ化してアプリケーションの Pod とし、Pod の統合ログを表示する

Kubernetes の操作

Podman Desktop の使用は、デーモンレス・アーキテクチャや Pod といった Kubernetes の概念を理解し、それらを日常的に使用できるようになるために最適な方法です。次のことが可能です。

  • Kubernetes の命令を YAML 形式で生成し、Kubernetes デプロイメント用のアプリケーションを準備する
  • Kubernetes YAML を、クラスタにデプロイする前にローカルでテストする
  • ローカルの Kubernetes クラスタをスピンアップし、アプリケーションをテストする
  • アプリケーションをデプロイメントプロセスにプッシュする

エンタープライズ機能の有効化

Podman Desktop には、大規模なエンタープライズ環境で作業する際に役立つ機能が搭載されています。Red Hat® OpenShift® を介して、仮想プライベートネットワーク (VPN) とプロキシの構成、複数のイメージレジストリとの対話、リモートクラスタへの接続とデプロイができます。

起動可能なコンテナの操作

起動可能なコンテナには、完全なオペレーティングシステムが組み込まれています。Podman Desktop の bootc 拡張機能を使用すると、ベアメタルハードウェア、Amazon Web Services仮想マシンなどに共通の形式で起動可能なコンテナイメージを作成できます。

Podman Desktop 拡張機能の活用

拡張機能を使用して Podman Desktop に機能を追加できます。コンテナエンジン・プロバイダーや Kubernetes プロバイダーとの統合を追加する拡張機能や、アクション、メニュー、構成、その他の便利な機能を追加する拡張機能があります。

次は、大規模言語モデル (LLM) と Red Hat プラットフォームの操作を単純化する 2 つの拡張パックを見ていきます。 

他の機能を確認する

Podman AI Lab 拡張パックを導入すると、生成人工知能 (生成 AI) アプリケーションを試すためのエントリーポイントとして Podman Desktop を使用できます。

Podman AI Lab は、ローカル環境で大規模言語モデル (LLM) アプリケーションを構築、テスト、実行するための GUI を提供します。LLM をローカルで実行すると、アーキテクチャが単純化され、機密データを外部の AI サービスと共有するリスクを排除できます。

Podman AI Lab には、チャットボットやコード生成など、一般的な生成 AI のユースケース向けのレシピのカタログが含まれています。オープンソースライセンス LLM の厳選されたリストから選択して、ダウンロードし、ローカルで実行できます。わずか数ステップでプレイグラウンド環境をセットアップし、さまざまな LLM を試すこともできます。

初めての AI アプリケーションを構築する

Podman Desktop 用の Red Hat 拡張パックは、Red Hat プラットフォームを使用するための入り口となります。Red Hat OpenShift にデプロイするアプリケーションを開発している場合、以下の無料の拡張機能でローカル環境と本番環境を橋渡しできます。

Red Hat OpenShift Local 拡張機能

Red Hat OpenShift はエンタープライズ向けのアプリケーション・プラットフォームです。この拡張機能によって、ローカル環境での Red Hat OpenShift の使用を開始し、単一ノードの Red Hat OpenShift クラスタの構成およびセットアップ方法を学ぶことができます。

Developer Sandbox for Red Hat OpenShift 拡張機能

Developer Sandbox for Red Hat OpenShift によって、アプリケーションの構築、テスト、検査、デバッグ、デプロイのための Red Hat OpenShift リモート環境を共有できます。

Red Hat SSO 拡張機能

Red Hat のシングルサインオン (SSO) テクノロジーにより、Red Hat アカウントの作成とログインが単純化されます。Red Hat SSO 拡張機能によって、Red Hat Developer プログラムへの登録、Red Hat Enterprise Linux イメージモードバイナリへのアクセスなどが可能になります。

bootc 拡張機能

起動可能なコンテナは、コンテナ内にオペレーティングシステムが直接組み込まれたディスクイメージです。bootc 拡張機能は、Podman Desktop で起動可能なコンテナと通常のコンテナを区別するのに役立ちます。

Red Hat 拡張パックを入手

Docker 社とそのユーザーコミュニティは、コンテナアプリケーションの業界標準を構築し、普及させました。Docker には、限定的なユースケースについて無料で使用できる Docker Desktop という GUI があります。

Podman Desktop と Docker Desktop はどちらもコンテナを管理するための GUI ツールですが、異なるサービスです。

Podman と Docker の最も重要なアーキテクチャ上の違いは、Podman がデーモンレスであることです。これにより、ローカル開発の実践手法を Kubernetes 環境に合わせて調整できるという Kubernetes の重要な特性がもたらされます。デーモンレス・アーキテクチャでは root 権限を持つプロセスを使用することなくコンテナを実行できるので、コンテナ環境のアクセス性が向上し、セキュリティリスクが軽減されます。Podman と Docker のデスクトップバージョンでも、この相違点は同じです。

Podman Desktop は主に Red Hat が後援し、開発しているため、Red Hat OpenShift などの他のテクノロジーと簡単に統合できます。

Podman は Docker と互換性があるため、いずれかのプラットフォームで作成したコンテナはもう一方のプラットフォームでも動作します。Podman Desktop で Docker Desktop の拡張機能を実行することもできます。

Podman Desktop は、コンテナや Kubernetes Pod の使用経験を積むための助けとなり、Red Hat Enterprise LinuxRed Hat OpenShift など、コンテナをサポートする他の Red Hat テクノロジーを活用するための入り口になります。

Red Hat Enterprise Linux は、エンタープライズ環境での Linux コンテナの実行における業界標準です。コンテナを容易にスピンアップし、デプロイを管理できるほか、新規アプリケーションの開発を加速できます。オープン・ハイブリッドクラウド環境全体で、Red Hat Enterprise Linux に可搬性の高いアプリケーションとコンテナを構築して、アジリティを維持すると同時に、新たな目標に応じて変革を常に推進できます。

Red Hat OpenShift は、アプリケーションを大規模に開発、モダナイズ、デプロイするための、信頼性が高く、包括的で一貫性のあるプラットフォームです。Kubernetes を基盤としており、アプリケーションを市場に投入するために必要なサービス一式を任意のインフラストラクチャ上に構築します。Red Hat OpenShift を活用することで、開発者はコンテナ化された新しいアプリケーションを作成し、ホストし、クラウドでデプロイできるようになります。さらに、スケーラビリティ、制御性、オーケストレーションが提供されることで、優れたアイデアを迅速かつ簡単にビジネスにつなげることが可能になります。

インタラクティブラボ:Podman を使用したコンテナのデプロイインタラクティブラボ:ルートレス Podman サービスを構成する

Red Hat 公式ブログ

Red Hat のお客様、パートナー、およびコミュニティのエコシステムに関する最新の情報を入手しましょう。

すべての Red Hat 製品のトライアル

Red Hat の無料トライアルは、Red Hat 製品をハンズオンでお試しいただける無料体験版です。認定の取得に向けた準備をしたり、製品が組織に適しているかどうかを評価したりするのに役立ちます。

関連情報

KVM とは?をわかりやすく解説

KVM(カーネルベースの仮想マシン)は、Linuxカーネルに統合された仮想化技術であり、Linuxは複数の独立した仮想マシン(VM)を実行するハイパーバイザーとして機能させます。

Ansible と Chef の違いとは?をわかりやすく解説

Ansible と Chef はオープンソースの IT 自動化ツール。アーキテクチャ(エージェントベースかエージェントレス)、言語(Python ベースの YAML か Ruby)等の違いがあります。

InstructLab とは

InstructLab は、プライベートデータを使用して大規模言語モデルをカスタマイズするプロセスを単純化します。

オープンソースリソース

関連記事