ホームページ >運用・保守 >Docker >Dockerで通常ユーザーに切り替える方法

Dockerで通常ユーザーに切り替える方法

PHPz
PHPzオリジナル
2023-04-10 09:02:474043ブラウズ

Docker では、より安全な操作を実現するために、通常、root 以外のユーザーがコンテナーの実行に使用されます。これは、root ユーザーがコンテナー内であらゆる操作を実行するための完全な権限を持っているためです。この記事では、非rootユーザーに切り替える方法を説明します。

1. 非 root ユーザーの作成

Docker を使用する前に、非 root ユーザーを作成する必要があります。これを行うには、次の方法で作成できます:

  1. 次のコマンドを実行して、「dockeruser」という名前のユーザーを作成します:
sudo useradd -ms /bin/bash dockeruser
  1. これはユーザー パスワードを設定します:
sudo passwd dockeruser
  1. このユーザーを docker ユーザー グループに追加します:
sudo usermod -aG docker dockeruser

2. コンテナー内の通常のユーザーに切り替えます

  1. 次のコマンドを使用してコンテナを起動します:
docker run -it --name mycontainer ubuntu:latest /bin/bash
  1. コンテナ内で、通常のユーザーに切り替えます:
su dockeruser

3. Dockerfile を使用して通常のユーザーに切り替える

Dockerfile を使用すると、コンテナ構築プロセスをより簡単に自動化できます。以下は、Dockerfile を使用して非 root ユーザーの切り替えを実装する例です。

  1. 「Dockerfile」という名前のファイルを作成し、次の内容を追加します:
FROM ubuntu:latest

RUN groupadd -g 1000 dockeruser && \
    useradd -r -u 1000 -g dockeruser dockeruser

USER dockeruser
  1. イメージをビルドしてコンテナーを起動します:
docker build -t myimage .
docker run -it --name mycontainer myimage /bin/bash

ここでは、Dockerfile を通じて「dockeruser」という名前のユーザーを作成し、コンテナーの起動時のデフォルト ユーザーとして設定します。

概要

root 以外のユーザーを使用して Docker でコンテナを実行すると、セキュリティが向上し、ホスト システムと機密データを保護できます。この記事では、非 root ユーザーに切り替える 2 つの方法、コンテナ内で手動で切り替える方法と、Dockerfile を使用して自動的に切り替える方法について説明しました。

コンテナ技術の発展に伴い、より多くのセキュリティ機能と便利な機能が Docker に導入されると考えられます。 Docker コンテナについてさらに詳しく知りたい場合は、私たちのブログをフォローしてください。

以上がDockerで通常ユーザーに切り替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。