【问题标题】:WSL2 docker-compose - unable to prepare contextWSL2 docker-compose - 无法准备上下文
【发布时间】:2021-08-26 20:35:49
【问题描述】:

我正在使用在 Windows 10 计算机上运行的 WSL2 上运行的 Docker 引擎。我的目标是使用 Docker-compose 创建一个服务,该服务使用 php:fpm 图像并安装 mysqli 扩展。这是我的docker-compose.yaml

version: "3"

services:
  nginx:
    image: "nginx"
    restart: 'always'
    ports:
      - '3030:80'
    volumes:
      - ./src:/src
      - ./config/site.conf:/etc/nginx/conf.d/default.conf
    networks:
        - code-network
  php:
    build:
      context: .
      dockerfile: Dockerfile
    image: php:fpm
    volumes:
        - ./src:/src
    networks:
        - code-network
  mariadb:
    image: "mariadb:10.3.24"
    restart: 'always'
    volumes:
      - "/var/lib/mysql/data:/data"
      - "/var/lib/mysql/logs:/logs"
      - /var/docker/mariadb/conf:/etc/mysql
    environment:
      MYSQL_ROOT_PASSWORD: "root"
      MYSQL_DATABASE: "T05CNCitk2020@"
      MYSQL_USER: "user"
      MYSQL_PASSWORD: "Heslo123"
    networks:
        - code-network

networks:
    code-network:
        driver: bridge

这是我的 Dockerfile:

FROM php:fpm

RUN docker-php-ext-install mysqli

当我运行命令 docker-compose up --build 时,它会强制容器重建。我遇到了以下问题:

Building php
unable to prepare context: path "\\\\?\\\\\\wsl$\\Ubuntu-20.04\\home\\vendasky\\Projects\\sql-gui" not found
ERROR: Service 'php' failed to build : Build failed

当所有文件都位于 Linux 子系统中时,我看不出路径应该错误的原因。任何提示,如何解决这个问题?

【问题讨论】:

    标签: php docker docker-compose windows-subsystem-for-linux wsl-2


    【解决方案1】:

    你是用 docker desktop for windows 运行这个吗?

    如果是这种情况,请尝试在实验设置下启用 Docker Compose V2 选项。这应该可以解决您的问题。

    【讨论】:

      【解决方案2】:

      Docker 无法找到该项目的路径,请正确映射您的 ubuntu,以便它可以轻松找到该项目,这应该可以解决您的问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-01-03
        • 1970-01-01
        • 1970-01-01
        • 2018-08-17
        • 1970-01-01
        • 1970-01-01
        • 2016-06-01
        相关资源
        最近更新 更多