Докер не может смонтировать nginx

У меня возникают проблемы с настройкой Docker в первый раз в Windows с помощью Docker Toolbox. На данный момент работает все, кроме nginx.

Сообщение об ошибке:

ERROR: for web  Cannot start service web: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:402: container init caused \"rootfs_linux.go:58: mounting \\\"/c/wamp64/www/cathaypacific_career/ops/nginx/default.conf\\\" to rootfs \\\"/mnt/sda1/var/lib/docker/aufs/mnt/ff9b27a89b26b0e9091264d04d3a475f18469db3cf3be473c005e2d4c7d4b5ef\\\" at \\\"/mnt/sda1/var/lib/docker/aufs/mnt/ff9b27a89b26b0e9091264d04d3a475f18469db3cf3be473c005e2d4c7d4b5ef/etc/nginx/conf.d/default.conf\\\" caused \\\"not a directory\\\"\"": unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
ERROR: Encountered errors while bringing up the project.

Конфигурация Docker-compose:

version: '3'

services:
  web:
    container_name: web
    image: nginx:1.13.3-alpine
    networks:
      - web_tier
    ports:
      - 80:80
    volumes:
      - ./nginx/default.conf:/etc/nginx/conf.d/default.conf
      - ../:/code
      - /code/ops/
    depends_on:
      - app
  app:
    container_name: app
    build: ./php/
    networks:
      - web_tier
      - app_tier
    expose:
      - '9000'
    volumes:
      - ./php/settings.conf:/usr/local/etc/php-fpm.d/settings.conf
      - ../:/code
      - /code/ops/
    working_dir: /code
    entrypoint: "/bin/sh -c"
    command:
      - "php-fpm"
    env_file: ../.env
    depends_on:
      - db
  db:
    container_name: db
    image: mysql:5.6.39
    networks:
      - app_tier
      - db_tier
    expose:
      - '3306'
    ports:
      - 3306:3306
    volumes:
       - db_data:/var/lib/mysql
       - ./db:/etc/mysql/conf.d
    restart: always
    env_file: ../.env
networks:
  web_tier:
    driver: bridge
  app_tier:
    driver: bridge
  db_tier:
    driver: bridge

volumes:
  db_data:

Проблема, похоже, связана с Nginx, у которого недоступен default.conf, или приложение считает, что это папка, а не файл. Я проверил проблему в Интернете, и люди предлагают смонтировать папку C :, поэтому я попытался смонтировать ее на Oracle VirtualBox и повторно запустить команду docker-compose up, но это не решило проблему.

Любая идея?

вы можете предоставить defalut.conf

Jinna Balu 18.04.2018 07:08

это слишком долго - но в основном это просто конфигурация nginx (порт прослушивания 80, корень кода ...) server {listen 80 default_server; слушать [::]: 80 default_server; индекс index.php index.html; error_log /var/log/nginx/error.log; access_log /var/log/nginx/access.log; корень / код / ​​общедоступный;

Andrew 18.04.2018 08:29

У меня такая же проблема с nginx:alpine в WIndows. Странно то, что вчера вечером он работал нормально, и когда я попытался запустить его сегодня утром, эта ошибка начала появляться.

Bananaapple 29.08.2018 10:01
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Как создать PHP Image с нуля
Как создать PHP Image с нуля
Сегодня мы создадим PHP Image from Scratch для того, чтобы легко развернуть базовые PHP-приложения. Пожалуйста, имейте в виду, что это разработка для...
2
3
1 351
1

Ответы 1

Я решил ту же проблему с общей папкой с Oracle VirtualBox VM default

Поделитесь папкой проекта и перезапустите виртуальную машину.

Вы можете сделать даже с такой командой, как docker-machine stop default и docker-machine stop default

Теперь вам нужно использовать общее имя (проект) вместо . в вашем файле создания (docker-compose.yml).

Для вашего случая

- ./nginx/default.conf:/etc/nginx/conf.d/default.conf

следует изменить на

- /sharename/nginx/default.conf:/etc/nginx/conf.d/default.conf

Теперь попробуйте с docker-compose up.

У меня это сработало.

Другие вопросы по теме