我正在寻找如何在构建过程中通过Dockerfile运行命令激活WordPress插件。
# 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编写之后,我运行此命令一次。
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