Dockerfile основывается на операционной системе Linux, но не на Windows 10 - PullRequest
0 голосов
/ 04 октября 2018

У меня есть следующий Dockerfile для приложения django:

FROM python:3.6
RUN mkdir /server
WORKDIR /server
RUN apt-get update && apt-get upgrade -y && apt-get install -y \
libsqlite3-dev
RUN pip install -U pip setuptools
RUN pip install --upgrade pip
COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
WORKDIR /server/django
ENTRYPOINT ["/bin/bash", "../docker-entrypoint-server"]

релевантный docker-compose, связанный с ним:

version: '3'
services:
  server:
   build: .
   container_name: server
   environment:
     SERVER_ENV: ${SERVER_ENV}
     DB_AUTH_SOURCE: ${DB_AUTH_SOURCE}
     DB_NAME: ${DB_NAME}
     DB_HOST: ${DB_HOST}
     DB_USER: ${DB_USER}
     DB_PASSWORD: ${DB_PASSWORD}
   networks:
     - app
   ports:
     - 8081:8000
   volumes:
     - .:/server
   command: /bin/bash
   tty: true
   stdin_open: true

они работают как прелесть на linux / mac, ноне в Windows 10. Когда сборка достигает инструкции COPY, все ее копии - это каталог, и только первый вложенный каталог в нем без прикрепленного к нему содержимого.

попытался проверить наличиеобщая опция C: \ на докере, не работает.пробовал на powershell с правами администратора и ничего.

Какие могут быть возможные причины?Почему он работает на двух хост-системах, а не на Win 10?

edit 1: версии

Windows: Windows 10 Education, 1803

Linux: Ubuntu 18.03 LTS

Mac: High Sierra 10.03

Докер: последняя версия на всех ОС

edit 2: решение

Оказывается, что отмена обмена и обмена, указанная JDPeckham , обнаружил проблему: неправильная конфигурация брандмауэра, вызванная антивирусом, который контролировал эти конфигурации.

Эта статья: https://success.docker.com/article/error-a-firewall-is-blocking-file-sharing-between-windows-and-the-containers очень полезна для устранения неисправностей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...