2017-10-27 1 views
0

Ich habe this docker tutorial verfolgt, aber weil es heute wirklich veraltet ist, kann ich es nicht vollständig folgen. Sobald ich diese docker-compose.yml Datei gearbeitet hatte:Docker komponieren yaml - Bände Ausgabe

version: '3' 
services: 
    nginx: 
    build: ./nginx/ 
    ports: 
     - 80:80 
    links: 
     - php 
    volumes: 
     - ./www/html:/var/www/html 

    php: 
    image: php:7.0-fpm 
    expose: 
     - 9000 
    volumes: 
     - ./www/html:/var/www/html 

Es hat erfolgreich ausgeführt wurde.

Es funktionierte nicht, als ich versuchte, Volumendaten in die separate Eigenschaft volumes zu extrahieren.

Ich habe mehrere Ansätze und Kombinationen ausprobiert, aber alle haben versagt. Bitte geben Sie mir einen Hinweis, wie Sie es richtig angeben.

Ordnerstruktur wie folgt aus:

nginx 
    default.conf 
    Dockerfile 
www 
    html 
    index.php 
docker-compose.yml 
+0

führen Sie Ihre Docker-Container in einer VM/Docker-Maschine aus? – diginoise

+0

@ digininoise Ich bin mir nicht sicher. Auf Windows 10 habe ich Docker installiert und nichts mehr – tekken

+0

, die es einschränkt ... verwenden Sie Windows Subsytem für Linux (WSL) oder Hyper-V VM? – diginoise

Antwort

1

Host-Volumes, auch bekannt als Halterungen binden, benötigen keine separate Volumina Abschnitt auf der obersten Ebene haben. Der Abschnitt Volumes wird nur für benannte Volumes benötigt. Tatsächlich können Sie die oberste Ebene des Datenträgers nur mit einem benannten Datenträger verwenden.

+0

Können Sie mir einen Hinweis geben, wie Sie das tatsächlich implementieren? – tekken

+0

Da sich Ihre Daten auf Ihrem Host befinden, würden Sie kein benanntes Volume verwenden. Die Dokumentation von Docker zur Verwendung von Volumes finden Sie hier: https://docs.docker.com/engine/admin/volumes/volumes/ – BMitch

+0

Also ist der einzig wahre Weg (in diesem Fall), meinen früheren Ansatz zu verwenden? – tekken