第21章 開発とトラブルシューティングに Toolbx を使用する
Toolbx コンテナーを使用すると、ホストシステムを変更することなく開発ツールをインストールできます。Toolbx は、システムをクリーンに保ちながらホストリソースにアクセスできるシームレスな環境を提供します。
システムへのソフトウェアのインストールには、一定のリスクが伴います。これにより、システムの動作が変化する可能性や、不要になった後も望ましくないファイルやディレクトリーがシステム内に残されてしまう可能性があります。
開発ツール、デバッグツール、エディター、ソフトウェア開発キット (SDK) を、ベースとなるオペレーティングシステムに影響を与えることなく、完全に変更可能な Toolbx コンテナーにインストールすることで、これらのリスクを回避できます。less、lsof、rsync、ssh、sudo、unzip などのコマンドを使用して、ホストシステム上で変更を加えることができます。
開発ツールや SDK を Toolbx コンテナーにインストールすることで、ベースとなるオペレーティングシステムへのシステム変更や不要なファイルのインストールを回避できます。less、lsof、rsync、ssh、sudo、unzip などのコマンドを使用して、ホストシステム上で変更を実行することもできます。Toolbx ユーティリティーは次のアクションを実行します。
-
registry.access.redhat.com/ubi10/toolbox:latestイメージをローカルシステムにプルする - イメージからコンテナーを起動する
- コンテナー内でシェルを実行し、そこからホストシステムにアクセスできる
Toolbx コンテナーがルートコンテナーとして実行されるか、ルートレスコンテナーとして実行されるかは、それを作成したユーザーの権限によって決まります。ホストシステム上で root 権限を必要とするユーティリティーは、root コンテナー内で実行する必要があります。
21.1. Toolbx コンテナーの起動 リンクのコピーリンクがクリップボードにコピーされました!
Toolbx コンテナーを起動することで、開発やトラブルシューティングのための分離環境に入ることができます。コンテナーに入ることで、基盤となるホストオペレーティングシステムを変更することなく、コマンドラインツールをインストールおよび実行できます。
手順
Toolbx コンテナーを作成します。
ルートレスユーザーとして:
$ toolbox create <mytoolbox> Created container: <mytoolbox> Enter with: toolbox enter <mytoolbox>ルートユーザーとして:
$ sudo toolbox create <mytoolbox> Created container: <mytoolbox> Enter with: toolbox enter <mytoolbox>正しいイメージを取得したことを確認します。
[user@toolbox ~]$ toolbox list IMAGE ID IMAGE NAME CREATED fe0ae375f149 registry.access.redhat.com/ubi10/toolbox:latest 5 weeks ago CONTAINER ID CONTAINER NAME CREATED STATUS IMAGE NAME 5245b924c2cb <mytoolbox> 7 minutes ago created registry.access.redhat.com/ubi10/toolbox:latest
Toolbx コンテナーに入ります。
[user@toolbox ~]$ toolbox enter <mytoolbox>
検証
<mytoolbox>コンテナー内でコマンドを実行し、コンテナーの名前とイメージを表示します。⬢ [user@toolbox ~]$ cat /run/.containerenv engine="podman-4.8.2" name="<mytoolbox>" id="5245b924c2cb..." image="registry.access.redhat.com/ubi10/toolbox:latest" imageid="fe0ae375f14919cbc0596142e3aff22a70973a36e5a165c75a86ea7ec5d8d65c"