DUICUO

Podman Desktop を使用して Fedora Linux 上のコンテナを管理する

これまで、開発者はコンテナのグラフィカル管理にDocker Desktopを使用してきました。これは、Docker DaemonとDocker CLIをインストールしているユーザーにとっては有効です。しかし、デーモンフリーのPodmanツールを使用している場合、Pods、Podmanデスクトップコンパニオン、CockpitといったPodmanフロントエンドはあるものの、公式アプリケーションは存在しません。しかし、もうそんなことはありません。Podman Desktopがあれば!

この記事では、Red Hat およびその他のオープンソース コントリビューターによって開発された Podman Desktop の機能、インストール、および使用方法について説明します。

インストール

Fedora LinuxにPodman Desktopをインストールするには、podman-desktop.ioにアクセスし、「Download for Linux」ボタンをクリックします。Flatpakとzipの2つのオプションが表示されます。この例ではFlatpakを使用します。「Flatpak」リンクをクリックした後、ファイルをダブルクリックしてGNOMEソフトウェアで開きます(GNOMEを使用している場合)。ターミナルからインストールすることもできます。

 flatpak podman-desktop-XXXflatpak をインストール

上記のコマンドで、XXX をダウンロードしたバージョンに置き換えてください。zipファイルをダウンロードした場合は、アーカイブを解凍し、Podman Desktopアプリケーションのバイナリを起動してください。GitHubのプロジェクトのリリースページにアクセスして、プレリリース版を入手することもできます。

特性

Podman Desktopはまだ開発初期段階ですが、コンテナイメージの作成やコンテナの実行など、多くの一般的なコンテナ操作をサポートしています。さらに、環境設定の「拡張機能」セクションにはPodman拡張機能が用意されており、macOSとWindowsでPodman仮想マシンを管理できます。

さらに、Podman DesktopはDocker Desktop拡張機能をサポートしています。これらの拡張機能は、「Preferences」の「Docker Desktop Extensions」からインストールできます。アプリケーションウィンドウには2つのペインがあります。左側の狭いペインにはアプリケーションのさまざまな機能が表示され、右側のペインはコンテンツエリアで、左側の選択に基づいて関連情報が表示されます。

Fedora 36 で動作する Podman Desktop 0.0.6

デモンストレーション

Podman Desktop の機能を完全に理解するために、Dockerfile からイメージを作成し、それをレジストリにプッシュし、プルして実行します。これらはすべて Podman Desktop 内で行います。

ビルドイメージ

最初のステップは、コマンドラインに次の行を入力して、単純な Dockerfile を作成することです。

 cat <<EOF>>Dockerfile

docker.io/library/httpd:2.4 から

コピー. /var/www/html

ワークディレクトリ/var/www/html


CMD [ "httpd" , "-D" , "フォアグラウンド" ]

終了

次に、「イメージ」をクリックし、「イメージをビルド」ボタンを押します。新しいページが開き、Dockerfile、ビルドコンテキスト、イメージ名を指定できます。「コンテナファイル」パスの下にある「Dockerfile」をクリックして参照し、選択します。「イメージ名」にイメージ名を入力します。イメージをコンテナレジストリにプッシュする場合は、 ​example.com/username/repo:tag​ :tag の形式で完全修飾イメージ名(FQIN)を指定できます。この例では、 ​quay.io​​demo-httpd​というパブリックリポジトリがあるため、 ​quay.io/codezombie/demo-httpd:latest​ /demo-httpd:latest と入力しました。同様の形式で、コンテナレジストリ(Quay、Docker Hub、GitHub Container Registry など)の FQIN を指定することもできます。「ビルド」ボタンを押し、ビルドが完了するまで待ちます。

プッシュ画像

ビルドが完了したら、イメージをプッシュします。そのため、Podman Desktopでレジストリを設定する必要があります。「Preferences」→「Registry」に移動し、「Add registry」ボタンをクリックします。

レジストリ センターの追加ダイアログ ボックス

「レジストリの追加」ダイアログボックスで、レジストリサーバーのアドレスとユーザー資格情報を入力し、「レジストリの追加」をクリックします。

次に、イメージリストで自分のイメージに戻り、アップロードアイコンを押してリポジトリにプッシュします。設定で追加したレジストリ名(このデモでは​quay.io​ )で始まるイメージ名にマウスを合わせると、イメージ名の横にプッシュボタンが表示されます。

画像名の上にマウスを移動するとボタンが表示されます。

イメージは Podman Desktop 経由でリポジトリにプッシュされます。

イメージがプッシュされると、イメージリポジトリにアクセスできる人なら誰でもプルできます。私のイメージリポジトリは公開されているので、Podman Desktopに簡単にプルできます。

画像をプル

そのため、すべてが正しく動作することを確認するために、このイメージをローカルで削除し、Podman Desktop にプルしてください。リストからイメージを探し、削除アイコンを押して削除します。イメージを削除したら、「Pull Image」ボタンをクリックします。「Pullするイメージ」に完全修飾名を入力し、「Pull Image」を押します。

コンテナイメージが正常にプルされました

コンテナを作成する

Podman Desktopデモの最後として、イメージからコンテナを起動し、結果を確認してみましょう。「コンテナ」に移動し、「コンテナを作成」を押します。すると、「コンテナファイル/Dockerファイルから」と「既存のイメージから」という2つのオプションがあるダイアログボックスが開きます。「既存のイメージから」を押します。するとイメージリストが表示されますので、プルしたいイメージを選択します。

Podman Desktopでコンテナを作成する

先ほどプルしたイメージをリストから選択し、その前の「再生」ボタンを押します。表示されるダイアログボックスで、コンテナ名に​demo-web​ 、ポート番号に「 ​8000​と入力し、「コンテナを開始」を押します。

コンテナ構成

コンテナの実行が開始されると、次のコマンドを実行して Apache サーバーのデフォルト ページを確認できます。

カール http://localhost:8000 

作業準備完了です!

コンテナリストには実行中のコンテナが表示され、ステータスが「実行中」に変わります。コンテナの前にある操作で実行できる操作が表示されます。例えば、ターミナルアイコンをクリックしてTTYを開き、コンテナに入ることができます。

次は何?

Podman Desktopはまだ開発が始まったばかりで、現在も活発に開発が進められています。GitHubには、以下のような魅力的なオンデマンド機能が掲載されているプロジェクトロードマップが公開されています。

  • Kubernetes統合
  • サポートポッド
  • タスクマネージャー
  • ボリュームサポート
  • Docker Compose をサポート
  • 親切なサポート