Je veux monter un volume dans le conteneur Docker en tant qu'utilisateur non root. J'utilise les éléments suivants (K8S.YAML) -
volumeMounts:
- name: volume-to-be-mounted
mountPath: /location
volumes:
- name: volume-to-be-mounted
hostPath:
path: path
type: DirectoryOrCreate
3 Réponses :
Vous pouvez envisager d'exécuter un conteneur init en tant qu'utilisateur racine. Demandez au conteneur et à un conteneur principal partagent le même volume. Du conteneur init met à jour la propriété du volume p>
La modification de la propriété du conteneur init ne sera reflétée que dans le conteneur init et non le conteneur d'application. J'ai essayé - Utilisateur de Chown -R: dossier utilisateur
Êtes-vous sûr que le volume est partagé entre les deux conteneurs?
Si vous utilisez KubeNettes, vous pouvez utiliser un contexte de sécurité et définissez la valeur Exemple de la DOCS P> fsgroup code>. apiVersion: v1
kind: Pod
metadata:
name: security-context-demo
spec:
securityContext:
runAsUser: 1000
fsGroup: 2000
volumes:
- name: sec-ctx-vol
emptyDir: {}
containers:
- name: sec-ctx-demo
image: gcr.io/google-samples/node-hello:1.0
volumeMounts:
- name: sec-ctx-vol
mountPath: /data/demo
securityContext:
allowPrivilegeEscalation: false
Vous voulez monter le même volume sur un autre conteneur (dans la même pod).
Je ne pense pas que tu puisses faire ça.
La définition de la POD est la suivante: une pod (comme dans une gousse de baleines ou de pois) est un groupe d'un ou plusieurs conteneurs (tels que des conteneurs Docker), avec un stockage / réseau partagé et une spécification pour courir les conteneurs. code>
Plus detail: https://kubernet.io/docs/concepts/workloads/pods/ POD / P>
Je m'attendrais à ce que le contenu de configmap soit en lecture seule (bien que vous ne trouvez pas une déclaration à cet effet dans la documentation). Juste tant que l'utilisateur actif peut lire les fichiers là-bas, cela compte-t-il réellement quel utilisateur les possède?
Je veux écrire dans cet endroit spécifique. Supprimera la carte de configuration de la question.