Docker では、より安全な操作を実現するために、通常、root 以外のユーザーがコンテナーの実行に使用されます。これは、root ユーザーがコンテナー内であらゆる操作を実行するための完全な権限を持っているためです。この記事では、非rootユーザーに切り替える方法を説明します。
1. 非 root ユーザーの作成
Docker を使用する前に、非 root ユーザーを作成する必要があります。これを行うには、次の方法で作成できます:
sudo useradd -ms /bin/bash dockeruser
sudo passwd dockeruser
sudo usermod -aG docker dockeruser
2. コンテナー内の通常のユーザーに切り替えます
docker run -it --name mycontainer ubuntu:latest /bin/bash
su dockeruser
3. Dockerfile を使用して通常のユーザーに切り替える
Dockerfile を使用すると、コンテナ構築プロセスをより簡単に自動化できます。以下は、Dockerfile を使用して非 root ユーザーの切り替えを実装する例です。
FROM ubuntu:latest RUN groupadd -g 1000 dockeruser && \ useradd -r -u 1000 -g dockeruser dockeruser USER dockeruser
docker build -t myimage . docker run -it --name mycontainer myimage /bin/bash
ここでは、Dockerfile を通じて「dockeruser」という名前のユーザーを作成し、コンテナーの起動時のデフォルト ユーザーとして設定します。
概要
root 以外のユーザーを使用して Docker でコンテナを実行すると、セキュリティが向上し、ホスト システムと機密データを保護できます。この記事では、非 root ユーザーに切り替える 2 つの方法、コンテナ内で手動で切り替える方法と、Dockerfile を使用して自動的に切り替える方法について説明しました。
コンテナ技術の発展に伴い、より多くのセキュリティ機能と便利な機能が Docker に導入されると考えられます。 Docker コンテナについてさらに詳しく知りたい場合は、私たちのブログをフォローしてください。
以上がDockerで通常ユーザーに切り替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。