使用 docker 工具箱获取不允许操作的错误,以在容器中运行 php

Getting Operation not permitted error using docker toolbox to get php running in container

提问人:Shiladitya Thakur 提问时间:8/21/2021 更新时间:8/28/2021 访问量:1245

问:

我在win主页上,使用docker工具箱并收到此错误:

make: /bin/sh: 不允许操作 make: *** [Makefile:243: pdo.lo] 错误 127 错误:服务“php”无法构建:命令 “/bin/sh -c docker-php-ext-install pdo pdo_mysql”返回非零 代码: 2

php.docker文件

FROM php:8.0.9-fpm-alpine

WORKDIR /var/www/html

COPY src .

RUN docker-php-ext-install pdo pdo_mysql

RUN addgroup -g 1000 laravel && adduser -G laravel -g laravel -s /bin/sh -D laravel
 
USER laravel

docker-compose.yml

version: "3.7"
services: 
  server:
    image: nginx:stable-alpine
    ports:
      - 80:80
    volumes:
      - ./src:/var/www/html
      - ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro
    depends_on: 
      - php
      - mysql

  php:
    build:
      context: .
      dockerfile: dockerfiles/php.dockerfile
    volumes: 
      - ./src:/var/www/html:delegated

  mysql:
    image: mysql:8.0
    env_file: 
      - ./env/mysql.env

  composer:
    build:
      context: ./dockerfiles
      dockerfile: composer.dockerfile
    volumes: 
      - ./src:/var/www/html

任何帮助或建议将不胜感激

docker-compose docker-toolbox

评论


答:

1赞 Desa 8/27/2021 #1

我面临着同样的问题。将 php-fpm 更新到次要版本后,最高可达 8.0.9。我无法使用 Docker 版本 19.03.1 构建映像。

但是使用 Docker 版本 20.10.8 构建通行证即可。您也可以尝试更新 Docker 并尝试重新构建。它可能会对你有所帮助。

评论

0赞 Shiladitya Thakur 8/27/2021
嘿,谢谢你的回复。但是,我正在使用 docker toolbox,不幸的是 toolbox 已被弃用,因此它只支持 Docker 版本 19.03.1。我认为更高版本的 docker 需要 docker desktop,但这适用于启用了 Hyper V 的 win 10 pro 或 linux 操作系统。但是知道问题的原因很好。