首页 > 解决方案 > 尝试拉时Docker symfony 4权限被拒绝

问题描述

我使用 docker 与 symfony 4 一起工作。docker-compose.yml 文件中的 MySQL 配置为:

mysql:
    image: mysql:5.7
    container_name: sf4_mysql
    volumes:
        - .docker/data/db:/var/lib/mysql
    environment:
        MYSQL_ROOT_PASSWORD: root
        MYSQL_DATABASE: ***
        MYSQL_USER: ***
        MYSQL_PASSWORD: ***

我试图将 .docker 文件夹放在 git ignore 文件中,但是当我尝试提交时,我收到了这条消息:

$ git add .
error: open(".docker/data/db/ib_logfile0"): Permission denied
error: unable to index file .docker/data/db/ib_logfile0
fatal: updating files failed

标签: gitsymfonydocker

解决方案


当您运行 docker-compose.yml 文件时,它像您一样定义服务,即 mysql 数据库,它将本地卷(从主机)映射到容器内部,它会创建 mysql 使用所需的文件夹和文件。并给他们root 用户作为所有者。

您将无法进一步使用它。我建议永远不要更改数据库文件夹的权限

对您来说最好的解决方案是将数据库卷放在一边。别的地方。但不在您的项目中。把它放在../.docker/data/db什么地方。


推荐阅读