【问题标题】:Docker TYPO3 Directory / is not writableDocker TYPO3 目录/不可写
【发布时间】:2017-10-11 16:12:09
【问题描述】:

我为 TYPO3 创建了自己的 docker 环境。它也开始了。问题是我无法安装 TYPO3,因为我没有授予对文件夹的写权限。
ERROR:' Path /var/www/html exists, but no file underneath it can be created.'

这是我用于 apache 和 PHP 设置的 dockerfile 和 docker-compose.yml:

有什么办法可以解决这个问题吗?

FROM php:7.0-apache

# PHP Extensions
RUN docker-php-ext-install pdo_mysql


# Composer
RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
RUN php composer-setup.php
RUN php -r "unlink('composer-setup.php');"
RUN mv composer.phar /usr/local/bin/composer


ADD vhost-default.conf /etc/apache2/sites-enabled/000-default.conf

# Open Ports
EXPOSE 80
EXPOSE 443

  app:
    build:
      context: ./Docker/apache
      dockerfile: Dockerfile
    container_name: apache
    ports:
        - "8090:80"
        - "443:443"
    volumes:
        - .:/var/www/html
    environment:
        - API_TOKEN=xxxx

【问题讨论】:

  • 在 linux 主机系统上?
  • 如果你给你的主机添加另一个路径是不是同样的问题?也许 /home/xxx/projects 左右?
  • 可能是您的 docker 中的服务器使用 www-data 运行,并且该用户没有对您本地的写入权限。但我不确定。
  • 我认为这可能是要走的路。不幸的是,我没有时间测试它。 denibertovic.com/posts/handling-permissions-with-docker-volumes
  • @Falk 是的,APACHE_RUN_USER 使用 www-data 运行任何解决方案我如何授予他们正确的权利?

标签: php apache docker typo3


【解决方案1】:

我找到了解决方案。您只需要在构建过程中创建typo3conf/ext/ 文件夹即可。

我也遇到了同样的问题,因为我下载的 sn-p 只是创建了typo3conf 文件夹。因此,当执行chown -R www-data. . 时,ext 文件夹不存在。然后,当您在 ext 文件夹中安装卷时,该文件夹将获得 root 权限。

所以,不仅要创建 typo3conf/,还要在里面创建 ext/ 文件夹,为我解决了这个问题。

【讨论】:

    猜你喜欢
    • 2013-03-24
    • 1970-01-01
    • 2020-07-06
    • 2013-08-21
    • 1970-01-01
    • 2015-05-15
    • 2017-03-26
    • 2012-08-29
    • 2017-05-03
    相关资源
    最近更新 更多