‫Brandon est avec le premier.
‫Prochaine question ici va poursuivre en justice contre utilisateur.
‫Comment préférez-vous utiliser des utilisateurs non root dans des conteneurs et conserver les autorisations de fichiers sur le
‫ou Hossain?
‫Quelle est la meilleure pratique actuelle pour les autorisations dans Docker.
‫Il n'est pas juste de dire que Docker lui-même avec les fichiers que vous exécutez dans
‫un conteneur peut être très frustrant, en particulier si vous utilisez des montages de liaison. Les montages de liaison combinent les autorisations des fichiers
‫hôtes avec les éléments en cours d'exécution dans le conteneur. vous mènera à dessiner vos cheveux et à devenir un peu
‫fou et certains de mes projets les plus difficiles ont été lorsque nous avions besoin de stocker des fichiers partagés sur plusieurs serveurs,
‫car plusieurs conteneurs sur différents hôtes accèdent tous aux mêmes fichiers avec les autorisations appropriées et utilisent également
‫le moindre privilège avec utilisateurs non administrateurs droit des utilisateurs non root.
‫Donc, ceux-ci peuvent être très difficiles.
‫Je dirais utilisateur contre go.
‫Donc, lorsque vous me posez des questions sur l'utilisateur Brandon, je suppose que vous parlez de la création d'images DR,
‫car c'est là que les utilisateurs appliquent correctement.
‫Et cela fonctionne mieux que Sue dans la construction d’un chien ou d’une image.
‫C’est ainsi que je comprends au moins pourquoi je utilise souvent Sue dans les images de Docker pour la construction, et je
‫ne connais pas vraiment la raison pour laquelle j’ai probablement appris cela il y a des années et que je
‫l’ai vite oublié.
‫Donc, je suppose que votre question porte vraiment sur la création d'images et je
‫dirais que l'utilisateur est la meilleure pratique pour utiliser les lignes de fichiers Docker si vous êtes dans une commande d'exécution et que vous devez modifier les autorisations. sur une
‫partie spécifique de cette commande d’exécution et c’est là que cela me
‫semble logique, car vous devez peut-être faire quelque chose en tant qu’utilisateur root, mais pas toujours dans cette commande d’exécution.
‫Alors peut-être que c'est quand vous choisissez d'aller à travers et d'autres choses.
‫Donc, je pense que ce qui revient en grande partie à des personnes qui, avec des autorisations, ne sont pas les
‫fichiers de l'image, ce sont les fichiers du moment de l'exécution.
‫Donc, une fois que votre conteneur démarre, disons que vous avez une application de noeud et que cette
‫application est un noeud d'utilisateur et qu'elle a un répertoire de téléchargement d'utilisateur, puis ces fichiers sont stockés sur l'hôte et seront donc
‫stockés comme Le nœud utilisateur et parce que c'est ce que les nœuds en cours d'exécution exécutent, puis vous avez un processus différent qui peut être un
‫conteneur différent et qui utilise un volume partagé ou quelque chose ou un montant d'achat et qui
‫ne s'exécute pas sous le même utilisateur et qui doit accéder aux fichiers lus. à droite et vous
‫entrez dans ces problèmes autour des autorisations.
‫Donc, je dirais qu'en fin de compte, si vous ne pouvez pas résoudre ces problèmes avec montré dans mod, alors ce n'est pas le cas.
‫En d’autres termes, à l’intérieur du fichier de docker, si vous effectuez par exemple une commande de copie
‫au lieu d’un fichier de médecin, vous pouvez désormais afficher cette option de manière à ce que, lorsque vous copiez des fichiers et qu’ils copient avec
‫les bons utilisateurs disposant des autorisations nécessaires. ces fichiers, vous ne pouvez pas faire une commande.
‫Je ne pense pas encore, bien que cela puisse être une fonctionnalité qui a effectivement été ajoutée et une bonne partie de
‫celle-ci a été ajoutée.
‫Le canard.
‫Nous allons donc à la documentation officielle à droite zoomer et si je vais à ouais.
‫Donc, si je cherche miroitée, je ne vois rien.
‫Mais si je vais à montré, vous pouvez voir où si vous utilisez l'annonce ou la copie, vous pouvez copier ceux avec
‫les autorisations appropriées.
‫C’est une chose énorme qui s’est produite il ya un an ou deux et
‫qui nous permet d’économiser beaucoup d’espace, car nous n’avons pas à modifier les autorisations sur les fichiers. La deuxième
‫étape consiste à modifier les autorisations des répertoires à l’exécution comme vous. besoin d'avoir un volume défini à certaines autorisations.
‫C'est à quoi sert un script de point d'entrée.
‫Donc, si vous preniez un exemple comme si nous revenions à Docker Hub et que je devais entrer dans ma suite, et si vous consultiez
‫l'un d'entre eux, mes fichiers Docker suivants, vous découvririez probablement qu'il y a un point d'entrée script en particulier avec des bases
‫de données et un point d’entrée script quelque chose qui peut commencer chaque fois qu’un
‫conteneur est démarré et souvent dans ces scripts points d’entrée vous verrez des choses comme j’ai besoin de tout
‫afficher dans ce répertoire et le modifier ou vous le savez faire un droit global plus ou quelque chose qui
‫n'est pas toujours la chose la plus sûre à faire, mais si vous devez modifier les autorisations à
‫la volée, vous le ferez dans le script.
‫Maintenant, bien sûr, le problème dans ce script est qu’il s’exécute en tant qu’utilisateur, ce que vous définissez dans un fichier fixe,
‫ce qui pose un autre problème, car si vous devez modifier les autorisations sur les fichiers pour
‫les rendre lisibles, lisible par l'utilisateur du noeud, mais le script est exécuté en tant qu'utilisateur du noeud, ce
‫qui pose des problèmes, car vous ne pouvez pas accéder à la route.
‫Essentiellement à ce point.
‫Donc, je dirais qu’il n’ya pas de solution facile ou la meilleure solution à ce problème, mais
‫qu’il est possible d’écrire des autorisations sur une section entière du cours, consacrée à l’écriture d’une session de formation de plusieurs heures sur les différentes
‫manières de traiter les autorisations.
‫Une petite friandise là-bas.
‫La dernière chose que je dirais, c’est que je sais que je réponds un peu
‫à votre question, mais c’est quelque chose qui, je pense, revient souvent, c’est que les autorisations de fichiers sous Linux ne sont que des chiffres.
‫En fait, il s’agit en fait d’un conseil qui m’a été donné par Phil Estes, qui
‫a implémenté l’espace de nommage et les problèmes d’espace de nommage.
‫Je suis désolé de la fonctionnalité d'espace de nom d'utilisateur à l'intérieur de Docker qui n'a pas été activée par défaut.
‫Mais si vous vouliez que tous vos conteneurs fonctionnent en tant que root, vous pourrez l'activer.
‫Et il était l'un de ceux qui ont aidé à ajouter cette fonctionnalité et nous parlions un jour et il a souligné
‫que vous connaissez l'utilisateur I. RÉ. et le groupe I. RÉ. ne sont que des idées que vous pouvez définir
‫comme bon vous semble.
‫Ce ne sont que des chiffres.
‫Et donc, si vous avez besoin de fichiers sur l'hôte, par exemple, pour correspondre à ceux du conteneur si vous
‫définissez tout par I. RÉ. nombre puis les noms d'utilisateurs sont à ce stade vraiment hors de propos.
‫Ils c'est vraiment le moi RÉ. qu'il va chercher à faire correspondre ces autorisations.
‫Ainsi, dans le cas où je travaillais sur un projet et que nous devions partager des fichiers entre plusieurs conteneurs,
‫ils fonctionnaient tous en tant qu'utilisateurs différents et nous devions nous assurer que les autorisations correspondaient.
‫Nous nous sommes vraiment assurés manuellement que ces fichiers utilisaient les bons numéros ou moi. RÉ. pour le propriétaire et le groupe, puis
‫tout a commencé à fonctionner car peu importait que l'utilisateur n'ait pas été créé sur l'hôte, par exemple,
‫ce qui correspondait à celui-ci. RÉ. à l'intérieur du conteneur.
‫Nous venons de nous assurer que le I. RÉ. les chiffres correspondent donc c'est un petit conseil.
‫Il m'a fallu un certain temps pour comprendre cela et comprendre comment cela fonctionnait, mais
‫en fin de compte, il est impossible de faire une comparaison pour s'assurer que le nombre de lectures, de droits
‫et d'autorisations correspond à ce que l'utilisateur qui exécute la commande fait.
‫Bonne question.
‫Je suis heureux que vous en ayez parlé, car ce n'est pas quelque chose dont nous avons
‫discuté ici récemment et nous devrions en parler davantage.