簡體   English   中英

使用 Docker 時如何修改 nginx.conf?

[英]How do I modify nginx.conf when utilizing Docker?

我繼承了一個Microsoft Visual Studio MVC 項目進行修改,我現在需要允許用戶將文件上傳到 web 服務器。 我在MS Visual Studio中使用Windows 11IIS Express用於開發目的, IIS. 但是,該應用程序在Ubuntu-based服務器上運行,該服務器運行NGINX作為 web 服務器。

問題:當我嘗試將大於 1MB 的文件從瀏覽器上傳到生產服務器時,我收到錯誤消息“413 Request Entity Too Large”。 在搜索了 web 之后,我發現:(a) NGINX默認調用 1MB 限制; (b) 有必要通過添加NGINX “client-max-body-size”指令來修改nginx.conf文件。

我在生產服務器上找到了nginx.conf文件,並用Nano. 但是,由於Docker. 誠然,我對Docker幾乎一無所知,不幸的是,設置此服務器的負責人早已離開公司。 此外,鑒於我認為有必要涉及 ZC5FD214CDD0D2B3B4272E73B202,我還不清楚是否簡單地修改nginx.conf文件並在生產服務器上重新啟動NGINX是否可以Docker.

順便說一句,我的客戶利用Azure DevOps來促進協作。 我定期使用MS Visual Studio中的Git對我的項目進行更改,隨后使用Ubuntu update_app.sh腳本將更改推送到生產中。 我之前曾嘗試修改我的 MVC 項目的本地副本中包含的nginx.conf文件。 該文件通過Azure DevOps推送到生產服務器,但修改后的nginx.conf文件不會推送到生產,可能是由於存在Docker.

我很感激有人向我解釋DockerNGINX. 我將進一步感謝有關如何將修改后的nginx.conf文件推入生產的任何提示。

提前感謝你的幫助。

Thankfully this is pretty straightforward and NGIX has good documentation on this topic (see Copying Content and Configuration Files from the Docker Host section of Deploying NGINX and NGINX Plus on Docker ).

  1. 查找已部署解決方案的Dockerfile (通常在項目或解決方案根目錄中)
  2. 復制當前 NGIX 配置文件的內容(通過瀏覽容器鏡像或在源代碼中查找配置文件)
  3. 在您的源代碼中創建一個名為conf的目錄。
  4. 將當前配置復制到conf中的 a 文件中,並對配置文件應用任何更改。
  5. 更新Dockerfile以將conf中的文件復制到 NGIX 在啟動時加載配置文件的容器中。 FROM ngix行之后將以下行添加到Dockerfile中(注意:行可能會有所不同,但使用ngix作為基礎映像應該很明顯): COPY conf {INSERT RELATIVE PATH TO CONF PARENT FOLDER}

這將在創建時將您的本地配置文件復制到容器中,NGIX 將在啟動時加載該容器。

注意:還有其他解決方案支持配置更改而不重建容器。

暫無
暫無

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

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