如何在Dokku中基于每个应用程序设置nginx配置设置?

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

我需要增加我在Dokku Paas上安装的单个应用程序的client_max_body_size设置。我可以全局编辑nginx配置,但这很脆弱,我希望这个设置尽可能与app配置一起使用。

我看过一些帮助重写nginx.conf文件的插件(例如.https://github.com/mikexstudios/dokku-nginx-alt),但是当我只想改变一个设置时,这似乎有些过分。

我也注意到了nginx-configure插件钩子(https://github.com/progrium/dokku/pull/189),但我找不到如何从应用程序中使用它的明确说明(例如,我将把钩子脚本放在哪里?)。

在每个应用程序的基础上设置单个nginx配置参数的最干净,最易维护和最便携的方法是什么?

nginx dokku
1个回答
7
投票

这个问题有点陈旧,但我在寻找同一问题的解决方案时遇到了它。

默认情况下,dokku站点安装在/home/dokku/{site-name}中。

在这个文件夹中,每个应用程序有一个主要的nginx文件,nginx.conf。每次部署时都会替换此文件,因此您不希望更改此文件。

但是,你会看到这个主要的nginx.conf文件有以下行 -

  include /home/dokku/{site-name}/nginx.conf.d/*.conf;

其中包括nginx.conf.d文件夹中的任何.conf文件。

因此,您可以将一个名为upload.conf的文件(例如)添加到nginx.conf.d文件夹中,其中只包含client_max_body_size 50M;,您将实现您想要做的事情。

创建目录和配置文件后,请确保将chown用于dokku用户。

有关详细信息,请参阅https://github.com/dokku/dokku/blob/master/docs/configuration/nginx.md

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