Heim  >  Fragen und Antworten  >  Hauptteil

dockerfile – Docker-Compose stellt Datenvolumen bereit, verfügt aber über keine Daten

Das Folgende ist die Datei docker-compose.yml

version:  '3.2'
services:
  nginx:
    build: ./dockerfiles/nginx/
    container_name: nginx-server
    ports:
      - "80:80"
    links:
      - "php-fpm"
    volumes:
      - wwwroot:/wwwroot
#     - ./dockerfiles/nginx/conf.d:/etc/nginx/conf.d:ro
    depends_on:
      - redis-db
    expose:
      - "80"
      - "6379"
      - "3306"
      - "9000"
    command: nginx -g 'daemon off;'
  mysql-db:
    image: mysql:5.7
    container_name: mysql-db
    volumes:
      - ./mysql_data:/var/lib/mysql
    restart: always
    environment:
        MYSQL_ROOT_PASSWORD: zhaojun
        MYSQL_DATABASE: package_v1
        MYSQL_USER: zhaojun
        MYSQL_PASSWORD: zhaojun
  redis-db:
    build: ./dockerfiles/redis
    container_name: redis-db
  php-fpm:
    build: ./dockerfiles/php/
    container_name: php-fpm
    volumes:
      - ./wwwroot:/wwwroot
    depends_on:
      - mysql-db
      - redis-db

volumes:
  wwwroot:
    driver: local

Die Projektstrukturdatei lautet wie folgt:

Aber nach dem Ausführen von docker-compose up -d kann Nginx erfolgreich zugreifen, aber ich kann nicht auf interne PHP-Dateien zugreifen

$docker exec -it php-fpm /bin/bash

Als ich wwwroot ls, stellte ich fest, dass darin keine Daten enthalten sind, aber

$docker insepct php-fpm

Montage wie folgt

 "Mounts": [
            {
                "Type": "bind",
                "Source": "/d/Customer Files/WorkSpace/Php/30-going-home/wwwroot",
                "Destination": "/wwwroot",
                "Mode": "rw",
                "RW": true,
                "Propagation": ""
            }
        ],

Warum ist das so?

淡淡烟草味淡淡烟草味2734 Tage vor1240

Antworte allen(1)Ich werde antworten

  • 世界只因有你

    世界只因有你2017-05-16 13:19:20

    我个人感觉,是在windows环境下,使用docker-machine的问题。

    在测试了几遍后,终于发现了问题,使用docker-machine ssh到虚拟机,发现挂载了c/users/

    接着,我把项目迁移到此目录下,重新尝试。

    docker-compose up后,进入到php-fpm容器,文件才成功的挂载。

    由于之前对docker-machine没有深入了解模式。

    Antwort
    0
  • StornierenAntwort