dockerfile - docker-compose 掛載資料卷卻沒有數據
淡淡烟草味
淡淡烟草味 2017-05-16 13:17:20
0
1
1157

如下是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

專案結構檔如下:

#但是在運行docker-compose up -d 後,nginx能存取成功,但是我存取不了php內部檔案

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

我ls wwwroot的時候發現裡面並沒有任何數據,但

$docker insepct php-fpm

掛載如下

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

這是為什麼呢?

淡淡烟草味
淡淡烟草味

全部回覆(1)
世界只因有你

我個人感覺,是在windows環境下,使用docker-machine的問題。

在測試了幾次後,終於發現了問題,使用docker-machine ssh到虛擬機,發現掛載了c/users/

接著,我把專案遷移到此目錄下,重新嘗試。

docker-compose up後,進入到php-fpm容器,檔案才成功的掛載。

由於之前對docker-machine沒有深入了解模式。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!