在 Docker 中的站点上本地使用 WP-CLI

问题描述 投票:0回答:1

这很奇怪,所以请耐心等待。

我的本地计算机上有一堆 WordPress 网站用于开发。我将 Docker 与两个容器 php:8.2-apache 和 mariadb 结合使用,我也将其用作本地主机。

当我在浏览器中查看站点时,站点加载正常,但是如果我使用主机上安装的 wp-cli,它将无法连接到数据库。在我拥有的测试站点的

wp-config.php
文件中,我有
define( 'DB_HOST, 'database' );
,它可以在浏览器中运行。

我需要在主机上安装 wp-cli,这样我就可以使用它而无需使用

docker exec

这是我的

docker-compose.yml
文件:

services:
  webserver:
    build: ./webserver
    container_name: webserver
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ~./sites:/var/www/html
    networks:
      - wordpress-network
    depends_on:
      - database

  database:
    image: mariadb
    container_name: database
    ports:
      - "3306:3306"
    volumes:
      - ./db:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=password
    expose: 
      - 3306
    networks:
      - wordpress-network

networks:
  wordpress-network:
    driver: bridge

任何帮助将不胜感激。

我也尝试过

define( 'DB_HOST', '127.0.0.1' );
define( 'DB_HOST', 'host.docker.internal' );
但没有任何方法可以修复 wp-cli 的数据库连接错误。

wordpress docker docker-compose wp-cli
1个回答
0
投票

您必须从 apache docker 容器运行 wp-cli。

© www.soinside.com 2019 - 2024. All rights reserved.