![](/img/trans.png)
[英]Docker - nginx with mounted host volume hangs using docker-compose
[英]docker-compose nginx volumes not mounted
我只有docker-compose.yml,其中只有nginx,但是運行它時,在nginx容器內找不到卷。 Dockerfile在另一個設置中工作正常,並且src目錄存在,所以我不明白為什么這在這里不起作用?
Nginx說:
nginx_1 | 2015/06/04 09:33:32 [錯誤] 13#0:* 1 open()“ /var/www/web/index.html”失敗(2:無此類文件或目錄),客戶端:172.17.42.1 ,服務器:,請求:“ GET /index.html HTTP / 1.1”,主機:“ localhost:8085”
樹:
.
├── code
├── docker-compose.yml
├── logs
├── nginx
└── readme.md
docker-compose.yml
nginx:
build: nginx/
volumes:
- code/dist:/var/www
ports:
- 8085:80
Dockerfile:
FROM ubuntu:14.04
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y \
nginx
RUN echo "\ndaemon off;" >> /etc/nginx/nginx.conf
ADD vhost.conf /etc/nginx/sites-enabled/default
ADD start.sh /start.sh
EXPOSE 80
ENTRYPOINT ["/start.sh"]
更新資料
當我在docker-compose.yml中將nginx重命名為othernginx時,它可以工作?
這是為什么?
似乎它干擾了另一個構建中的其他容器,docker-compose不會在不同的docker-compose.yml之間分隔容器嗎?
看着錯誤,nginx試圖從/var/www/web/index.html
獲取index.html。 但是,您正在將代碼安裝到var/www
。 我認為容器nginx
可能使用的是較早的版本,該版本使用/var/www/web/
目錄,並且更改容器名稱會強制重新構建。 docker-compose up --build
應該強制重建。
問題是你的電話
- code/dist:/var/www
如果您將其更改為
- ./code/dist:/var/www
一切都應該沒問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.