ホームページ  >  記事  >  システムチュートリアル  >  Podman コンテナを実行するための正しい姿勢: Sudo コマンドを使用して Linux システムでコンテナを管理する

Podman コンテナを実行するための正しい姿勢: Sudo コマンドを使用して Linux システムでコンテナを管理する

PHPz
PHPz転載
2024-02-12 10:40:141262ブラウズ

Linux システムでは、Podman は人気のある軽量コンテナ エンジンですが、コンテナを操作する際にはいくつかの詳細に注意する必要があります。重要な問題の 1 つは、sudo コマンドを正しく使用してコンテナを管理し、セキュリティと信頼性を確保する方法です。この記事では、sudo コマンドを使用して Podman コンテナを適切に管理する方法について説明します。

コンテナは現代のコンピューティングの重要な部分であり、コンテナ周辺のインフラストラクチャが進化するにつれて、より優れた新しいツールが登場し始めています。以前は、LXC を使用するだけでコンテナを実行できましたが、Docker の人気が高まるにつれて、コンテナはますます複雑になり始めました。最後に、Podman では、コンテナ管理システムに期待していたもの、つまりコンテナとポッドの構築、実行、管理を容易にするデーモンのないコンテナ エンジンが得られます。

Podman コンテナを実行するための正しい姿勢: Sudo コマンドを使用して Linux システムでコンテナを管理する

コンテナは、コントロール グループや名前空間などの Linux カーネル機能と直接対話し、これらの名前空間に多数の新しいプロセスを生成します。つまり、コンテナーを実行すると、実際には Linux システム内で Linux システムを実行することになります。オペレーティング システムの観点から見ると、これは管理上の特権的なアクティビティに非常によく似ています。通常、一般のユーザーはシステム リソースをコンテナと同じように自由に制御できないため、デフォルトで Podman を実行するには root または sudo 権限が必要です。ただし、これはデフォルト設定にすぎず、使用できる唯一の設定というわけではありません。この記事では、一般ユーザーが sudo なし (「ルートレス」) で Podman を実行できるように Linux システムを構成する方法を説明します。

ネームスペースユーザーID

カーネル名前空間は本質的に、どのプロセスが同じクラスに属しているかを Linux が追跡するのに役立つ架空の構造です。これは Linux の「キュー ガードレール」です。あるキュー内のプロセスと別のキュー内のプロセスの間に実際には違いはありませんが、相互に「遮断」することができます。あるプロセスのセットを「コンテナ」として宣言し、別のプロセスのセットをオペレーティング システムとして宣言するには、それらを分離しておくことが重要です。

Linux は、ユーザー ID (UID) とグループ ID (GID) を使用して、どのユーザーまたはグループがプロセスを所有しているかを追跡します。通常、ユーザーは、名前空間内の子プロセスに割り当てられた 1,000 個程度のスレーブ UID にアクセスできます。 Podman はコンテナを起動したユーザーに割り当てられたスレーブ オペレーティング システム全体を実行するため、デフォルトで割り当てられたスレーブ UID とスレーブ GID 以外のものが必要になります。

usermod コマンドを使用すると、より多くの下位 UID および下位 GID をユーザーに付与できます。たとえば、ユーザー tux にさらに多くの下位 UID と下位 GID を付与するには、まだ割り当てられていないユーザーに適切な大きい UID (200000 など) を選択し、それを数千ずつ増やします。 リーリー

名前空間へのアクセス

ネームスペースの数にも制限があります。通常、これは非常に高く設定されます。 systctl (カーネル パラメーター ツール) を使用して、ユーザー名前空間の割り当てを確認できます。 リーリー

これは十分な名前空間であり、ディストリビューションのデフォルトになる可能性があります。ディストリビューションにこのプロパティがない場合、または非常に低く設定されている場合は、ファイル /etc/sysctl.d/userns.conf に次のようなテキストを入力してディストリビューションを作成できます。 リーリー

この設定をロードします:

リーリー

root 権限なしでコンテナを実行する

構成をセットアップしたら、コンピュータを再起動して、ユーザーおよびカーネル パラメータの変更がロードされ、有効になっていることを確認します。

再起動後、コンテナ イメージを実行してみます:

リーリー

コンテナはコマンドのようなものです。

この記事では、sudoers ファイル構成、セキュリティ構成、コンテナーの起動など、Linux システムで sudo を使用して Podman コンテナーを維持するための正しい姿勢について詳しく説明します。 sudo を適切に構成して使用することで、コンテナーのセキュリティと信頼性をより適切に保護し、ビジネス ニーズをより適切に満たすことができます。なお、実際の運用においては、機密情報の取り扱いには不必要な損失が生じないよう注意が必要です。この記事が、sudo コマンドを使用して Podman コンテナを管理するスキルをよりよく習得するのに役立つことを願っています。

以上がPodman コンテナを実行するための正しい姿勢: Sudo コマンドを使用して Linux システムでコンテナを管理するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlxlinux.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。