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. windows误人子弟啊2. php传对应的id值为什么传不了啊有木有大神会的看我下方截图3. python - linux 下用wsgifunc 运行web.py该如何修改代码4. python - oslo_config5. 关于mysql联合查询一对多的显示结果问题6. 实现bing搜索工具urlAPI提交7. 冒昧问一下,我这php代码哪里出错了???8. mysql优化 - MySQL如何为配置表建立索引?9. MySQL主键冲突时的更新操作和替换操作在功能上有什么差别(如图)10. 数据库 - Mysql的存储过程真的是个坑!求助下面的存储过程哪里错啦,实在是找不到哪里的问题了。
