簡體   English   中英

是否可以使用環境變量覆蓋uwsgi ini-file

[英]Is it possible to override uwsgi ini-file with environment variables

我正在嘗試構建一個“基礎”docker鏡像,用於運行帶有uwsgi的python框架。 目標是讓其他人構建他們自己的docker鏡像,在這里他們轉儲他們的應用程序邏輯和他們需要的任何配置覆蓋。

我認為能夠通過提供在啟動時傳遞給UWSGI_*環境變量來覆蓋uwsgi.ini文件中的任何默認設置可能會很好。

我嘗試過這種方法,並且如果它根本不在ini文件中(例如UWSGI_WORKERS=4 ),則通過env var設置一個值。 但是如果我在ini文件中放置一個workers=1行,它似乎會覆蓋env var。

這是預期的行為嗎? 我無法在文檔中找到有關配置解析順序的任何內容。 我必須訴諸這樣的事嗎? 使用env vars似乎更清潔。

if-exists = ./override.ini
include = %(_)
endif =

首先,使.ini文件中的所有環境變量引用如下的環境變量:

[uwsgi]
http = $(HTTP_PORT)
processes = $(UWSGI_WORKERS)
threads = $(UWSGI_THREADS)
...

然后在Dockerfile中為這些環境變量設置所需的默認值。

現在,任何使用基本映像的人都可以通過設置特定的env變量來覆蓋任何配置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM