添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

Docker-compose permet facilement de monter des volumes à l'intérieur d'un conteneur docker.

Cela se fait simplement en définissant une liste de volume à monter depuis votre fichier docker-compose:

volumes:
- ~/.aws:/etc/aws
- data:/opt/application/data

Cela suffit à monter les répertoires suivants:

- ${HOME}/.aws sur l'hôte dans le repertoire /etc/aws du conteneur
- data sur l'hôte dans le repertoire /opt/application/data du conteneur

Bien noter que data est un chemin relatif par rapport à l'emplacement du fichier docker-compose (et non pas par rapport au répertoire courant).

Maintenant rien n'empêche d'utiliser docker-compose depuis un conteneur mais si vous montez des volumes ils risquent de ne pas être monter.

Pourquoi? Parce que le conteneur et l'hôte utilise le même docker daemon. Quand on monte un volume le docker daemon le résout depuis l'hôte et non pas depuis le conteneur.

Pour que cela fonctionne il faut d'abord penser à monter le volume depuis l'hôte dans le conteneur en gardant le même chemin. Ce conteneur peut ensuite démarrer un autre conteneur en montant le volume car ce repertoire existe à la foi dans le conteneur et surtout sur l'hôte.

Bien que démarrer depuis un conteneur, les 2 conteneurs se trouvent en fait au même niveau par rapport à l'hôte et au docker daemon.