问题描述
我正在开发一个使用 docker-compose 在本地运行的 wordpress 主题。这是我的 docker-compose 文件:
version: '2'
services:
MysqL:
image: MysqL:5.7
restart: always
ports:
- 32787:3306
environment:
MysqL_USER: wordpress
MysqL_ROOT_PASSWORD: wordpress
MysqL_DATABASE: wordpress
MysqL_PASSWORD: wordpress
wordpress:
depends_on:
- MysqL
image: wordpress
ports:
- 32788:80
restart: always
volumes:
- ./:/var/www/html/wp-content/themes/lorraine
environment:
wordpress_DB_HOST: MysqL:3306
wordpress_DB_USER: wordpress
wordpress_DB_PASSWORD: wordpress
这个配置的问题是我无法执行wpcli,因为我无法访问wordpress主文件夹,所以......我通过这个改变了它:
wordpress:
volumes:
- ../../:/var/www/html #To generate wordpress structure outside my theme folder
wpcli:
image: wordpress:cli
volumes_from:
- wordpress
links:
- MysqL
entrypoint: wordpress
command: "--info"
但是我有两个问题:
- 创建的文件夹是使用此权限创建的:
drwxr-xr-x 3 www-data www-data 4096 5 月 14 日 08:30 插件
- docker-compose up -d 抛出这个错误:
错误:对于 wpcli 无法启动服务 wpcli:OCI 运行时创建 失败:container_linux.go:349:导致启动容器进程 "exec:"wordpress": 在 $PATH 中找不到可执行文件": 未知 错误:启动项目时遇到错误。
你知道我该如何修复它们吗?
更新
我通过更改 wp-cli 配置解决了第二个问题:
wordpress:
volumes:
- ../../../:/var/www/html
wpcli:
image: wordpress:cli
volumes:
- ../../../:/var/www/html
depends_on:
- MysqL
- wordpress
但是文件夹和文件是以只读权限创建的。我尝试将 rw 添加到卷属性,但它不起作用。
你知道我该如何解决吗?
解决方法
错误说
"executable file not found in $PATH":"Set PATH to point to wordpress executable in your compose file."