Dockerfile构建在linux / mac主机操作系统上,但不在Windows 10上构建

时间:2018-10-03 22:19:47

标签: powershell docker docker-compose dockerfile

对于django应用程序,我具有以下Dockerfile:

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指令时,它所复制的都是目录,并且 only 仅是其中的第一个嵌套目录,没有附加内容。

试图检查docker上的共享C:\选项,但没有工作。 尝试在具有管理员权限的Powershell上执行任何操作。

可能是什么原因?为什么它可以在两个主机操作系统上运行而不在Win 10上运行?

编辑1:版本

Windows:Windows 10教育版1803

Linux:Ubuntu 18.03 LTS

Mac:High Sierra 10.03

Docker:所有操作系统上的最新版本

编辑2:解决方案

事实证明,JDPeckham指出的取消共享和共享揭示了问题:由控制这些配置的防病毒软件引起的防火墙配置错误。

本文:https://success.docker.com/article/error-a-firewall-is-blocking-file-sharing-between-windows-and-the-containers对于解决这些问题很有帮助。

0 个答案:

没有答案