【问题标题】:Change to pm = static on php-fpm docker image在 php-fpm docker 映像上更改为 pm = static
【发布时间】:2019-11-09 19:49:40
【问题描述】:

我正在尝试在 PHP 的 fpm 配置中更改此值。

在这里,你可以看到我的简单docker-compose文件:

version: '3.6'
services:

  wordpress:
    image: wordpress:${WORDPRESS_VERSION:-php7.3-fpm}
    container_name: ${WORDPRESS_CONTAINER:-wordpress}
    volumes:
      - ./php/pool.d:/usr/local/etc/php-fpm.d
    environment:
      - WORDPRESS_DB_NAME=${WORDPRESS_DB_NAME:-wordpress}
      - WORDPRESS_TABLE_PREFIX=${WORDPRESS_TABLE_PREFIX:-wp_}
      - WORDPRESS_DB_HOST=${WORDPRESS_DB_HOST:-mysql}
      - WORDPRESS_DB_USER=${WORDPRESS_DB_USER:-root}
      - WORDPRESS_DB_PASSWORD=${WORDPRESS_DB_PASSWORD:-password}
    depends_on:
      - mysql
    restart: always
...

./php/pool.d/my-www.conf里面我只有:

pm = static
pm.max_children = 10

我得到了错误:

ERROR: [/usr/local/etc/php-fpm.d/my-www.conf:2] unknown entry 'pm'

如果我包含 wwwpool 命名空间:

[www]
pm = static
pm.max_children = 10

我得到了错误:

ALERT: [pool www] user has not been defined

有什么想法吗?

【问题讨论】:

    标签: php wordpress docker docker-compose fastcgi


    【解决方案1】:

    实际上,当您将目录挂载到 docker-image 内部时(就像您所做的那样 ./php/pool.d:/usr/local/etc/php-fpm.d)

    version: '3.6'
    services:
    
      wordpress:
        ...
        volumes:
          - ./php/pool.d:/usr/local/etc/php-fpm.d
        ...
    

    你替换了它。因此,除了像这样的一小部分之外,您没有池的配置

    pm = static
    pm.max_children = 10
    

    因此,您会收到错误消息。为了解决这个问题,我可以提出两种方法:

    • 您可以将完整的池配置文件传递到 docker-image 内部,并在新配置文件中更改您想要的任何内容,然后从中更改 docker-compose 文件
    version: '3.6'
    services:
    
      wordpress:
        ...
        volumes:
          - ./php/pool.d:/usr/local/etc/php-fpm.d
        ...
    

    到这里

    version: '3.6'
    services:
    
      wordpress:
        ...
        volumes:
          - ./php/pool.d/www.conf:/usr/local/etc/php-fpm.d/www.conf
        ...
    
    • 您可以通过将新配置值作为第二个配置文件传递到 docker-image 内部的池目录来覆盖池配置的一部分。但是,您必须关心文件名。例如,通常,默认池配置文件的名称是 www.conf 因此,要覆盖其配置,您必须创建一个名为 www2.conf 的文件以在 www.conf 文件之后加载(有关更多信息,请参阅此问题:@987654321 @)。此外,您的 docker-compose 文件将是这样的
    version: '3.6'
    services:
    
      wordpress:
        ...
        volumes:
          - ./php/pool.d/www2.conf:/usr/local/etc/php-fpm.d/www2.conf
        ...
    

    【讨论】:

      猜你喜欢
      • 2022-06-22
      • 2023-01-14
      • 2019-07-18
      • 1970-01-01
      • 2020-08-14
      • 1970-01-01
      • 2023-02-10
      • 2020-05-31
      • 2019-11-06
      相关资源
      最近更新 更多