とことんDevOps | 日本仮想化技術のDevOps技術情報メディア

DevOpsに関連する技術情報を幅広く提供していきます。

日本仮想化技術がお届けする「とことんDevOps」では、DevOpsに関する技術情報や、日々のDevOps業務の中での検証結果、TipsなどDevOpsのお役立ち情報をお届けします。
主なテーマ: DevOps、CI/CD、コンテナ開発、IaCなど
各種SNSのフォローもよろしくお願いいたします。

Podman Desktop 1.0を試す

かつてPodman Desktopは、PodmanのGUI画面といった様なソフトウェアでした。必要な機能を最低限実装して、GUIで色々コンテナーを管理する様なそういったソフトウェアでした。

Podman Desktopもバージョン1.0に到達してどんな感じになったのかなと思いリリースノートを確認したところ、色々機能追加されている様な感じだったので触ってみました。

github.com

ちなみに私は普段macOSを普段使い、Podman DesktopとPodmanはHomebrewを使って導入していたので、brew upgradeを実行することで最新版に更新できました。

OSごとのインストール方法については、公式ドキュメントをご覧ください。

podman-desktop.io

Podman Desktop 1.0を触ってみる

さて、Linux以外でPodmanを動かす場合、仮想マシンのなかでPodmanを動かすためにPodman Machineを動かす必要があります。以前のバージョンのPodman Machineが残っていたので、一旦削除して作り直しました。コマンドで実行する場合は次の様に実行しますが、同じ作業はGUIからボタンをぽちぽち押していくだけで可能になっています。

podman machine rm podman-machine-default
podman machine init
podman machine start

Podman Machine起動後の画面がこちらです。

この画面にも映り込んでいますが、OpenShift Localというのが気になります。Red Hat OpenShift Local は、最小限の OpenShift Container Platform 4 クラスターと Podman コンテナーランタイムをローカルコンピューターで実行するものです。どうやらPodman DesktopからOpenShift Localの実行が可能みたいです。

OpenShift LocalをPodman Desktopで実行してみる

実行すると、自動的にOSに対応するOpenShift Localインストーラーがダウンロードされて、インストーラーが実行されるようです。

インストール後にイニタライズ実行すると、OpenShift Localを使ってOpenShiftが自分のラップトップ上で動かせます。

インストール要件はドキュメントにある様に、対応するOSで実行する必要があります。

access.redhat.com

OpenShift Localを動かすにはシークレットキーが必要です。

access.redhat.com

シークレットキーは上記文書にも書かれていますが、Red Hat Hybrid Cloud Console の Red Hat OpenShift Local ページからダウンロードできます。アクセスするにはRed Hatアカウントが必要です(無料)。

console.redhat.com

実行中に必要なもののダウンロードが行われ、途中でシークレットキーの入力を促されます。ダウンロードしたPull Secretファイルの中身をコピペしてください。そうすると処理が続行されます。

この待ち時間の間、OpenShiftのコマンドラインをダウンロードしておきます。 以下からダウンロードできます。OSとアーキテクチャーを間違えないように気をつけます。

console.redhat.com

全部の処理が終わると、OpenShiftが実行されます。OpenShift稼働後の使い方については公式のドキュメント にもありますが、OpenShift Web コンソールへのアクセスしてプロジェクト(KubernetesではNamespaceの様なものの)を作って使っていくだけです。

次のように実行すると、標準設定したブラウザーでOpenShift Container Platform Web コンソールが開きます。

crc console

ログインユーザーとパスワードは、これまたドキュメントに書かれていますが、次のように実行するとでユーザーとデフォルトパスワードが表示されます。入力するとログインできます。

crc console --credentials

ラップトップにある程度システムリソースがあれば、Podman Desktopを使って簡単にOpenShiftを動かすことができるようになったわけです。 ちなみに現バージョンはApple SiliconモデルのMacでも動作するのを確認してます。

Podman Desktopで「kind」を使ってみる

さらに、kindもサポートしていました。kindは「Kubernetes in Docker」の名が示すように、DockerのコンテナーのなかでKubernetesクラスターを簡単に実行するものです。ローカルでKubernetesを動かすツールだとminikubeかkindかがよく使われるツールの代表でしょうか。Podman Desktopで使えるのはkindの方です。kind自体は、ちょっと前のバージョンでPodmanサポートしていました。

Podman Desktopで作成したkindクラスターは停止してから削除という形をとります。しばらく使うなら「停止」しておけばリソースを使い潰すことはありません。

Podman Desktop 1.0は設定からOpenShiftを動かしたり、kindを使ってセットアップしたKubernetesクラスターを動かすことが可能になっています。GUIでは最新のバージョンを動かすのみですが、kind CLIをインストールしておくことで、CLIベースでPodmanを使ったローカルのKubernetesクラスターの実行も可能になっています。コンテナベースのアプリケーション開発やテストに使うことができそうです。

まとめ

ローカルのKubernetesクラスターやOpenShift、Dockerとほぼ同じように使えるPodmanが利用できる状況になりました。今回特に取り上げませんでしたが、現在のPodmanはDocker APIをしゃべることができるので、VSCodeでDocker Desktopを使ったDev Containerを使っていたユーザーはDocker DesktopからPodmanに乗り換えるだけで同じ作業ができるようになっています。

普段のコンテナベースの開発にPoman Desktopは活躍しそうです。

これで、個人的にはもうDocker Desktopは使わなくても良いかも? とはいえ、こういったブログを書く身としてはこれからもDocker Desktopも追いかけていきます。