symfony - Symfony 命令的 Docker 执行:权限被拒绝
问题描述
我目前正在使用 docker 建立一个 symfony 项目,需要通过bin/console
以下方式运行一些命令:
php bin/console doctrine:database:create --if-not-exists
php bin/console doctrine:migrations:migrate
目前我正在尝试这样做docker-compose exec
:
docker-compose exec app bin/console doctrine:database:create --if-not-exists
结果,我收到此错误:
OCI 运行时执行失败:执行失败:container_linux.go:345:启动容器进程导致“exec:\”bin/console\“:权限被拒绝”:未知
我尝试在我的 Dockerfile 中使用 chmod,但这不起作用:
Dockerfile-php
FROM php:fpm
RUN apt-get update && apt-get install -y --no-install-recommends \
git \
libxml2-dev \
&& docker-php-ext-install \
pdo_mysql
RUN curl -sS https://getcomposer.org/installer | php && mv composer.phar /usr/local/bin/composer
COPY . /var/www/project
WORKDIR /var/www/project/
RUN usermod -u 1000 www-data
RUN chown -R www-data:www-data var/cache
RUN chown -R www-data:www-data var/log
RUN chmod +x bin/console
docker-compose.yaml
services:
app:
build:
context: .
dockerfile: Dockerfile-php
environment:
- DATABASE_URL=mysql://xxx:xxx@db:3306/project_db # Connection string for the database
volumes:
- ./:/var/www/project/
networks:
- symfony
...
任何想法,我该怎么做?
解决方案
我遇到了同样的问题,但是在我的终端中运行这个命令解决了这个问题:
chmod +x bin/console
文件上的 chmod +x 意味着您将使其可执行。
推荐阅读
- gps - NEO-6M GPS 误差 30 英里
- c# - 如何使用 EFcore 进行集成测试以验证添加的实体是否无效?
- excel - How to do Multi Criteria Match Index Function
- animation - 在 SwiftUI 中显示动画 SVG 文件
- swift - Why in Swift generics factory method does compiler warn Generic class 'X' requires that 'Object' conforms to 'Y'
- r - 在 R 中为 R 包下载 HTTPS 文件的最佳方法
- reactjs - ReactJS Routing - Update Router, when Router and Link are in separate components
- php - 尝试安装 laravel 6,但命令返回 5.8.*
- javascript - vue.js render data getting 'of undefined'
- sql - 有没有办法根据扩展名提取文件名但可能未知值?