第23章 container-tools API の使用
REST ベースの API を使用することで、Podman とプログラムでやり取りできます。この API は Libpod と Docker 互換のエンドポイントの両方をサポートしており、外部ツールやクライアントとの統合を可能にします。
Podman 2.0 の新しい REST ベースの API は、従来の varlink リモート API を置き換えるもので、ルートフルおよびルートレスの両方をサポートします。これには、Podman 用の Libpod API と、cURL、Postman、Google の Advanced REST client などのプラットフォームから Podman を呼び出すための Docker 互換 API が含まれています。
Podman サービスはソケットのアクティベーションに依存しているため、接続がアクティブでないと実行できません。この機能を有効にするには、podman.socket サービスを手動で起動する必要があります。接続がアクティブになると、Podman サービスが起動し、要求された API アクションを実行した後、終了して非アクティブ状態に戻ります。
23.1. root モードで systemd を使用した Podman API の有効化 リンクのコピーリンクがクリップボードにコピーされました!
RHEL 上で Podman API を有効にするには、systemd ソケットユニットを root モードで起動して有効にします。この設定により、システム全体のコンテナー管理が容易になり、Podman が既存のインフラストラクチャーとシームレスに統合され、さらに外部管理ツール向けの安定したエンドポイントも提供されます。
前提条件
-
podman-remoteパッケージがインストールされている。
手順
サービスをすぐに起動します。
# systemctl enable --now podman.socketdocker-podmanパッケージを使用してvar/lib/docker.sockへのリンクを有効にするには以下を実行します。# dnf install podman-docker
検証
Podman のシステム情報を表示します。
# podman-remote infoリンクを確認します。
# ls -al /var/run/docker.sock lrwxrwxrwx. 1 root root 23 Nov 4 10:19 /var/run/docker.sock -> /run/podman/podman.sock