[英]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.