2016-07-02 10 views
8

Die Docker-Compose-Datei https://docs.docker.com/compose/compose-file/#/volumes-volume-driver zeigt verschiedene Möglichkeiten zum Anhängen von Host-Unterverzeichnissen relativ zur Compose-Datei.Können wir Unterordner eines benannten Volumes in Docker einbinden?

Zum Beispiel:

Band: # Nur einen Pfad angeben und lassen Sie den Motor ein Volume erstellen -/var/lib/mysql

# eine absolute Pfadzuordnung angeben -/opt/Daten: - ./cache:/tmp/cache

# Benutzer/var/lib/mysql

# Pfad auf dem Host, bezogen auf die Compose Datei -relative Weg - ~/configs:/etc/configs /: ro

# Named Volumen - Datenvolumen:/var/lib/mysql

Ist ist möglich, ein Unterverzeichnis eines zu montieren benanntes Volumen an einem bestimmten Ort? Zum Beispiel etwas wie unten, was ich versucht habe, aber nicht zu funktionieren scheint.

# Named volume 
    - datavolume/sql_data:/var/lib/mysql 

Ich gehe davon aus, ich könnte diese in der Lage sein, zu verwalten, indem das Datenvolumens zu einem Ort wie /data Montag und dann in der Dockerfiles für jeden Container, erstellen symbolische Links aus den Unterverzeichnissen zu den Standorten.

zum Beispiel in einer Docker-compose.yml Datei

volumes: 
    - datavolume:/data 

und dann in den Behälter Dockerfile

RUN ln -s /data/sql_data /var/lib/mysql 

Ich begann gehen diesen Weg, aber es war immer chaotisch und nicht funktioniert. Bevor ich diesen Ansatz entweder aufgab oder die Zeit investierte, um ihn zu debuggen, wollte ich sicherstellen, dass es keine Möglichkeit gab, nur Unterverzeichnisse einer named vollume anzugeben.

Antwort

Verwandte Themen