У меня есть рабочий docker-compose
пример запуска статического html с nginx
.docker-compose with docker-swarm под докер-машиной не установлены объемы
Дерево каталогов:
├── docker-compose.yml
├── nginx
│ ├── app
│ │ └── index.html
│ └── Dockerfile
docker-compose.yml
:
nginx:
build: ./nginx
volumes:
- ./nginx/app:/usr/share/nginx/html
ports:
- 8080:80
Каталог nginx
имеет Dockerfile
:
FROM nginx
Все работает правильно.
Проблема заключается в том, что я строю Docker-Swarm
инфраструктуру docker-machine
следующую документацию Докер: Local
, то swarm-master
и two nodes
.
Все, кажется, отлично работает.
$ eval $(docker-machine env --swarm swarm-master)
$[swarm-master]$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d8afafeb9f05 few_nginx "nginx -g 'daemon off" 20 minutes ago Up 3 seconds 443/tcp, 192.168.99.102:8080->80/tcp swarm-host-00/few_nginx_1
Но nginx
возвращается Forbidden
$[swarm-master]$ curl http://192.168.99.102:8080/
<html>
<head><title>403 Forbidden</title></head>
<body bgcolor="white">
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx/1.9.10</center>
</body>
</html>
вхожу в virtualbox
и в container
:
$[swarm-master]$ docker-machine ssh swarm-host-00
[email protected]:~$ docker exec -ti d8afafeb9f05 bash
и ничего внутри nginx/html
каталоге:
[email protected]:/# ls /usr/share/nginx/html/
Нужно ли что-то делать в compose
/swarm
для volumes
? Я делаю что-то неправильно?