COSCUP / COSCUP-Volunteer

The COSCUP volunteer platform is an online tool that allows interested individuals to register as volunteers for the conference, and a way for volunteers to communicate with each other and with the organizers. COSCUP 志工平台是一個可以讓有興趣的人登錄成為 COSCUP 的志工,同時也提供志工彼此溝通和與大會聯繫的方式。
https://volunteer.coscup.org/
GNU Affero General Public License v3.0
67 stars 34 forks source link

Support hot reload #125 #130

Closed orertrr closed 1 year ago

orertrr commented 1 year ago

更改開發階段時建立 container 的方式與相關設定,並支援 hot reload

Pull request type

Please check the type of change your PR introduces:

What is the current behavior?

Issue Number: #125

What is the new behavior?

額外

Other information

目前 main.py 與 setting.py 更改後 server 無法自動重跑,測試後發現如果 mount 單一檔案到 container 時才會發生此現象

toomore commented 1 year ago

@orertrr 這個目前看起還很棒,不會有與正式環境衝突的問題,但發現一個問題是 CPU 會有升高的狀況,不確定是不是改成這樣因此(對於 docker 來說)監控檔案變化的數量太多造成。

或許可以參考這裡的規格 ,試試用 ro(read-only access) 或是 nocopy 的方式,觀察 CPU 的狀況!

orertrr commented 1 year ago

OK,我再看一下

orertrr commented 1 year ago

@toomore 有觀察到一個現象是,使用 flask 的內建伺服器時,logs/apps/log.log 的內容會暴增,有沒有可能是因為不斷寫入 log 導致 CPU 使用率升高?

目前來看是因為 watchdog 這個套件會一直探測到 log 被更改並不斷的寫入 log,才導致 log 內容暴增。

orertrr commented 1 year ago

@toomore

docs_dev/.git 那部分我在 entrypoint.sh 多加一個 cleanup function 當執行完時會刪除 docs_dev/.git