Maison > Questions et réponses > le corps du texte
Ce qui suit est le fichier 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
Le dossier de structure du projet est le suivant :
Mais après avoir exécuté docker-compose up -d, nginx peut accéder avec succès, mais je ne peux pas accéder aux fichiers internes php
$docker exec -it php-fpm /bin/bash
Quand j'ai utilisé wwwroot, j'ai découvert qu'il ne contenait aucune donnée, mais
$docker insepct php-fpm
Monté comme suit
"Mounts": [
{
"Type": "bind",
"Source": "/d/Customer Files/WorkSpace/Php/30-going-home/wwwroot",
"Destination": "/wwwroot",
"Mode": "rw",
"RW": true,
"Propagation": ""
}
],
Pourquoi est-ce ?
世界只因有你2017-05-16 13:19:20
Personnellement, je pense que c'est un problème d'utiliser Docker-machine dans un environnement Windows.
Après avoir testé plusieurs fois, j'ai finalement découvert le problème. J'ai utilisé docker-machine ssh sur la machine virtuelle et j'ai découvert que c/users/
Ensuite, j'ai déplacé le projet vers ce répertoire et j'ai réessayé.
Après la composition de docker, entrez dans le conteneur php-fpm et le fichier est monté avec succès.
Comme je n’avais pas une compréhension approfondie des modèles Docker-Machine auparavant.