dockerfile - docker-compose 掛載數據卷卻沒有數據
問題描述
如下是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: zhaojunMYSQL_DATABASE: package_v1MYSQL_USER: zhaojunMYSQL_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-dbvolumes: 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沒有深入了解模式。
相關文章:
1. docker-compose 為何找不到配置文件?2. boot2docker無法啟動3. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?4. java中返回一個對象,和輸出對像的值,意義在哪兒5. android - E/dalvikvm: Could not find class java.nio.file.Path,6. python - linux怎么在每天的凌晨2點執行一次這個log.py文件7. android - 哪位大神知道java后臺的api接口的對象傳到前端后輸入日期報錯,是什么情況?求大神指點8. mysql數據庫每次查詢是一條線程嗎?9. python是怎么實現過濾 #注釋代碼的?10. 請問一下各位老鳥 我一直在學習獨孤九賤 現在是在tp5 今天發現 這個系列視頻沒有實戰
