Docker Secrets est une fonctionnalité de Docker qui vous aide à gérer les informations sensibles, telles que les mots de passe, les clés SSL, les clés SSH, etc. Ces informations sensibles sont appelées ‘secrets’. L’utilisation de Docker Secrets pour stocker ces informations sensibles est une pratique recommandée par rapport à l’insertion directe de ces informations dans le code sous forme brute.
Voici les étapes pour utiliser Docker Secret pour stocker les informations sensibles :
1. Création du secret : Utilisez la commande suivante pour créer un secret. Ici, ‘mon\_secret’ est le nom du secret et le contenu du secret est lu depuis le terminal.
\`\`\` echo “Ceci est un secret” | docker secret create mon\_secret - \`\`\` Ou vous pouvez créer un secret à partir d’un fichier. Si vous avez votre secret stocké dans un fichier nommé ‘my\_secret.txt’, vous pouvez utiliser la commande suivante pour créer un secret Docker. \`\`\` docker secret create mon_secret my_secret.txt \`\`\`1. Attribuer le secret à un service : Une fois que le secret est créé, vous pouvez l’attribuer à un service lors de sa création ou lors de sa mise à jour. Pour ajouter le secret ‘my\_secret’ au service ‘myservice’, utilisez la commande suivante.
\`\`\` docker service create —name myservice —secret my\_secret myservice:latest \`\`\` Pour ajouter le secret lors de la mise à jour du service, utilisez la commande suivante. \`\`\` docker service update —secret-add source=my_secret,target=/etc/my_secret myservice \`\`\`1. Utiliser le secret dans le code : Dans le conteneur, le secret est disponible comme un fichier dans le répertoire ‘/run/secrets/’. Dans cet exemple, il sera disponible sous ‘/run/secrets/my\_secret’. Vous pouvez modifier votre code pour lire le secret à partir de ce fichier au lieu de le conserver en dur dans votre code.
1. Supprimer un secret : Pour supprimer un secret, vous devez d’abord le retirer de tous les services avec lesquels il est associé. Ensuite, vous pouvez utiliser la commande suivante pour supprimer le secret.
\`\`\` docker secret rm my\_secret \`\`\`Remarque : Docker Secrets est uniquement disponible en mode Swarm.