【问题标题】:Wordpress with Docker-compose not getting environment variables带有 Docker-compose 的 Wordpress 没有获取环境变量
【发布时间】:2023-02-20 19:29:47
【问题描述】:

docker-compose 文件包含标准的 wordpress 设置。为简洁起见,省略了 DB 和 nginx 服务块。

  image: wordpress:6.1.1-php8.2-fpm
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: user
      WORDPRESS_DB_PASSWORD: password
      WORDPRESS_DB_NAME: wordpress
      WORDPRESS_WP_HOME: http://example.com
      WORDPRESS_CONFIG_EXTRA: >
          define('WP_HOME', 'http://example.com/');
          define('WP_SITEURL', 'http://example.com/');
          define('FORCE_SSL_ADMIN', false);
    volumes:
      - wp-app:/var/www/html
    depends_on:
      - db
    networks:
      - wordpress-network

我希望将变量WP_HOMEWP_SITEURLFORCE_SSL_ADMIN设置在容器内的/var/www/html/wp-config.php中。 但是那里的值只是默认值或空白。 也许这些用户变量是在其他地方设置的。但试图找到他们 grep-ing wordpress 安装目录没有返回特定 URL 的任何命中。

我尝试了不同的语法,例如:

WORDPRESS_CONFIG_EXTRA=
    define('WP_HOME', 'http://example.com/');

或者

WORDPRESS_CONFIG_EXTRA: >
          define('WP_HOME', 'http://example.com/');

但仍然没有成功。 将这些环境变量添加到我的 wordpress 设置的正确方法是什么?

【问题讨论】:

    标签: wordpress docker docker-compose environment-variables


    【解决方案1】:

    尝试使用管道“|” . Docker-compose 会将其解释为多行字符串:

      WORDPRESS_CONFIG_EXTRA: |
            define('WP_HOME', 'http://example.com/');
            define('WP_SITEURL', 'http://example.com/');
            define('FORCE_SSL_ADMIN', false);
    

    【讨论】:

      猜你喜欢
      • 2022-01-11
      • 1970-01-01
      • 1970-01-01
      • 2019-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-17
      • 1970-01-01
      相关资源
      最近更新 更多