gpt4 book ai didi

wordpress - 如何使用 docker-compose 的官方 WordPress 镜像修复 wp-content 的文件权限

转载 作者:行者123 更新时间:2023-12-03 06:56:15 24 4
gpt4 key购买 nike

问题

<小时/>

我正在使用 docker-compose 和 docker 存储库中的官方 WordPress 镜像设置 WordPress 本地环境。

我在 Windows 上。

问题是我的 wp-content 存在一些权限问题,并且我无法从我的 WordPress 管理面板上传文件。 wordpress error unable to create directory

我已经做了什么

<小时/>

然后我检查了容器内的文件权限,这是输出:

file permissions in the wordpress container

正如你所看到的,我的wp-content的所有者是 root而不是www-data .

直接的解决方案是打开容器的 bash 并给出
chown -R www-data:www-data /var/www/html/wp-content/

这当然有效,但我不想每次启动新的 WordPress 项目时都执行此过程。为了实现这一目标,我创建了一个 Dockerfile像这样:

FROM wordpress:5.1.1

# install dos2unix (fix problem between CRLF and LF)
RUN apt-get update
RUN apt-get install -y dos2unix

# increase upload limit
RUN touch /usr/local/etc/php/conf.d/uploads.ini \
&& echo "upload_max_filesize = 10M;" >> /usr/local/etc/php/conf.d/uploads.ini

# fix permissions issues
COPY entrypoint.sh /
RUN dos2unix /entrypoint.sh
RUN chmod +x /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]

还有我的entrypoint.sh看起来像这样:

#!/bin/bash
echo Fixing permissions...
chown -R www-data:www-data /var/www/html/wp-content/

但后来我意识到我正在覆盖 ENTRYPOINT原始 WordPress 图像的,并且容器始终以 code 0 退出.

然后我尝试使用 CMD而不是ENTRYPOINT ,我改变了我的Dockerfile像这样:

FROM wordpress:5.1.1

# increase upload limit
RUN touch /usr/local/etc/php/conf.d/uploads.ini \
&& echo "upload_max_filesize = 10M;" >> /usr/local/etc/php/conf.d/uploads.ini

CMD chown -R www-data:www-data /var/www/html/wpcontent/

但我总是收到文件或文件夹不存在的错误。

我尝试使用 CMD也喜欢这样:
CMD ["chown", "-R", "www-data:www-data", "/var/www/html/wp-content/"]
但没有成功。

问题

<小时/>

有一种方法可以在原始ENTRYPOINT之后运行命令。 ?
您知道解决这个问题的更好方法吗?

最佳答案

您可以修改 ./entrypoint.sh 脚本,以在执行 chown 命令后运行原始图像的默认入口点脚本:

#!/bin/bash
echo Fixing permissions...
chown -R www-data:www-data /var/www/html/wp-content/
docker-entrypoint.sh apache2-foreground

关于wordpress - 如何使用 docker-compose 的官方 WordPress 镜像修复 wp-content 的文件权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55747066/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com