Maison >Opération et maintenance >Docker >Comment passer à l'utilisateur normal dans Docker

Comment passer à l'utilisateur normal dans Docker

PHPz
PHPzoriginal
2023-04-10 09:02:474046parcourir

Dans Docker, afin de réaliser des opérations plus sécurisées, les utilisateurs non root sont généralement utilisés pour exécuter des conteneurs, car l'utilisateur root dispose de toutes les autorisations pour effectuer n'importe quelle opération à l'intérieur du conteneur. Dans cet article, nous expliquerons comment passer à un utilisateur non root.

1. Créer un utilisateur non root

Avant d'utiliser Docker, nous devons créer un utilisateur non root. Pour ce faire, nous pouvons le créer de la manière suivante :

  1. Exécutez la commande suivante pour créer un utilisateur nommé « dockeruser » :
sudo useradd -ms /bin/bash dockeruser
  1. Définissez un mot de passe pour cet utilisateur :
sudo passwd dockeruser
  1. Ajoutez cet utilisateur à docker Groupe d'utilisateurs :
sudo usermod -aG docker dockeruser

2. Passez à l'utilisateur normal dans le conteneur

  1. Utilisez la commande suivante pour démarrer le conteneur :
docker run -it --name mycontainer ubuntu:latest /bin/bash
  1. À l'intérieur du conteneur, passez à l'utilisateur normal :
su dockeruser

3 . Utilisez Dockerfile pour passer aux utilisateurs ordinaires

peuvent utiliser Dockerfile pour automatiser le processus de création de conteneurs plus facilement. Voici un exemple d'utilisation d'un Dockerfile pour implémenter le changement d'utilisateur non root :

  1. Créez un fichier appelé "Dockerfile" et ajoutez le contenu suivant :
FROM ubuntu:latest

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

USER dockeruser
  1. Créez l'image et démarrez le conteneur :
docker build -t myimage .
docker run -it --name mycontainer myimage /bin/bash

Ici, nous passons par Dockerfile qui crée un utilisateur nommé "dockeruser" et le définit comme utilisateur par défaut au démarrage du conteneur.

Résumé

L'utilisation d'utilisateurs non root pour exécuter des conteneurs dans Docker peut améliorer la sécurité et protéger le système hôte et les données sensibles. Dans cet article, nous avons abordé deux méthodes pour passer à un utilisateur non root : basculer manuellement dans le conteneur et automatiquement à l'aide d'un Dockerfile.

Avec le développement de la technologie des conteneurs, nous pensons que davantage de fonctionnalités de sécurité et de commodité seront introduites dans Docker. Si vous souhaitez également en savoir plus sur les conteneurs Docker, veuillez suivre notre blog.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn