我正在寻找如何在构建过程中通过 Dockerfile RUN 命令激活 WordPress 插件。
Dockerfile中的相关命令是
# activate plugins
RUN wp plugin activate wp-discourse-export --allow-root --path=/var/www/html
我得到的错误是
Step 10/10 : RUN wp plugin activate wp-discourse-export --allow-root --path=/var/www/html
---> Running in c5dac3f62c4c
Error: This does not seem to be a WordPress install.
Pass --path=`path/to/wordpress` or run `wp core download`.
ERROR: Service 'wordpress' failed to build: The command '/bin/sh -c wp plugin
activate wp-discourse-export --allow-root --path=/var/www/html' returned a non-zero code: 1
如果我禁用该 RUN 命令,构建映像,启动 docker 映像,登录到创建并运行的 docker 映像
wp plugin activate wp-discourse-export --allow-root --path=/var/www/html
Plugin 'wp-discourse-export' activated.
Success: Activated 1 of 1 plugins.
激活成功。
如何在构建过程中激活 docker 镜像中的 WordPress 插件?
更新:
我正在通过将脚本复制到图像然后稍后从主机运行它来解决此问题。
在 Dockerfile 中。
# activate plugins
COPY activate-wordpress-plugins.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/activate-wordpress-plugins.sh
在 docker-compose 之后,我运行了一次这个命令。
docker exec -it wordpress_1_7522c9dae310 /usr/local/bin/activate-wordpress-plugins.sh
更新 2
我创建了一个脚本来启动实例,然后运行该脚本。
#!/usr/bin/env bash
echo docker-compose up -d
docker-compose up -d
echo docker exec -it $(docker-compose ps -q wordpress) /usr/local/bin/activate-wordpress-plugins.sh
docker exec -it $(docker-compose ps -q wordpress) /usr/local/bin/activate-wordpress-plugins.sh