Visual Studio 代码 + WordPress + Docker:VS 代码不采购 Apache envvars 文件

Visual Studio Code + WordPress + Docker: VS Code Not Sourcing Apache envvars File

我在我们当地的非营利性广播电台的 WordPress 网站上做志愿者工作,并且在整个网站大修的过程中,我决定使用 Docker 和 Visual Studio 代码设置 WordPress远程开发功能,因为我在 Python/Django 开发的日常工作中非常喜欢这种设置。

通过通常的特定于环境的调整,一切正常,当我 运行 docker 从终端编写时,它 运行 没问题。

当我在 VS Code 的远程开发环境中 运行 东西时,它不会自动启动 Apache。这不是什么大问题,但是当我尝试通过 运行ning apache2 -D FOREGROUND 在 VS Code 的终端中启动 Apache 时,我收到此错误:

apache2: Syntax error on line 80 of /etc/apache2/apache2.conf: DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot

如果我 运行 source /etc/apache2/envvars 解决了这个问题,那么在 launch.json 中并不是什么大不了的事情并且可以解决我想,但我很好奇为什么 [= =34=]ning docker-与 VS Code 正在做的相比,在我的主机 OS 的终端中进行组合。

感谢任何人可能有的任何想法。

我也遇到了同样的问题。这是一个典型的 Ubuntu 问题,其中 /etc/apache2/envvars 文件需要在 apache2 正常启动之前获取。
要解决此问题,只需查看 envars 文件 (cat /etc/apache2/envvars) 的内容,它的输出将显示环境变量。将它们添加到您的 Dockerfile 中。就我而言,我在我的 Dockerfile 中添加了以下环境变量。

ENV APACHE_RUN_USER  www-data
ENV APACHE_RUN_GROUP www-data
ENV APACHE_LOG_DIR   /var/log/apache2
ENV APACHE_PID_FILE  /var/run/apache2/apache2.pid
ENV APACHE_RUN_DIR   /var/run/apache2
ENV APACHE_LOCK_DIR  /var/lock/apache2
ENV APACHE_LOG_DIR   /var/log/apache2

使用这个镜像来启动你的容器