Я просто хочу протестировать Docker, и кажется, что что-то не работает должным образом. Когда у меня есть Докер-compose.yml вроде этого:Docker compose - share volume Nginx
web:
image: nginx:latest
ports:
- "80:80"
когда в браузере я бегу мой домен docker.app
(домен образца указывает на докер IP) Я получаю Nginx по умолчанию веб-страницы.
Но когда я пытаюсь сделать что-то вроде этого:
web:
image: nginx:latest
volumes:
- /d/Dev/docker/nginx-www/nginx/html/:/usr/share/nginx/html/
ports:
- "80:80"
когда я бегу:
docker-compose up -id
когда я запускаю же URL в браузере я получаю:
403 Запрещено
nginx/1.9.12
Я использую Windows 8.1 в качестве своего хоста.
Я делаю что-то неправильно или, возможно, папки не могут быть разделены таким образом?
EDIT
Решение (на основе @HemersonVarela ответа):
Объем я пытался передать был в D:\Dev\docker
месте, так что я использовал /d/Dev/docker
в начале своего пути. Но, глядя на https://docs.docker.com/engine/userguide/containers/dockervolumes/ вы можете прочитать:
Если вы используете Docker машину на Mac или Windows, ваш Docker демон имеет лишь ограниченный доступ к OS X или Windows, файловая система. Docker Machine пытается автоматически обмениваться файлами/Users (OS X) или C: \ Users (Windows).
так, что мне нужно сделать, чтобы создать свой nginx-ww/nginx/html
каталог в C:\users\marcin
каталоге, так что я закончил:
web:
image: nginx:latest
volumes:
- /c/Users/marcin/docker/nginx-www/nginx/html/:/usr/share/nginx/html/
ports:
- "80:80"
и это работает без проблем. Файлы теперь разделены, так как они должны быть
Большое спасибо. Это то, чего мне не хватало. Однако я обнаружил еще одну очень странную вещь при обмене файлами 'index.html'. –