0%

前言

在 Flask application 中,我們通常會使用 Flask-SQLAlchemy (或 SQLAlchemy) 套件來操作資料庫,但它們只會在 table 不存在時才會建立新的 table, 若是之後 table 欄位有變動就需要整個 table 刪掉重建或是直接使用 SQL command 去更新 table schema,但是這兩種方式都不適合用於正式 production 的服務,而且若是直接使用 SQL command 去更新 table schema 會無法控管資料庫變更的紀錄,因此我們就需要 Flask-Migrate 這個套件來做資料庫的版控,這一篇文章就來紀錄一下使用方式。

Read more »

前言

在沒有 HEALTHCHECK 指令之前,Docker 只能透過 process 是否退出來判斷 container 的狀態,不過有時候是服務已經無法正常運作了,但 process 沒有退出,這樣會導致該服務仍然可以接收用戶請求,但是無法正常回應。

Read more »

前言

在 Flask 中設定 cookie 時,若其值含有中文,會被轉換為 8 進位 (Ex. \344\270\255\346\226\207\346\270\254\350\251\246 ),在前端顯示時就無法正確顯示,這一篇文章來記錄一下解決方式。

Read more »

前言

這篇文章主要是記錄一下使用跨域 cookie 需要設定及注意的地方,以下範例程式後端是使用 Python/Flask, 前端則是用 Axios 來送出 request 到後端。

Read more »

前言

在 docker 中,預設是使用 root user, 但這樣非常不安全,所以通常會在 docker 中另外建立 user,可以透過 --build-args 傳入當前使用者的 User ID 和 Group ID,將新增的 user 的 User ID 和 Group ID 設為當前使用者,最後使用 USER new_user 切換為 non-root user 再執行所需指令。

Read more »

Conda

前言

之前在開發 Python 程式時,我都是使用 pip 來做套件管理,使用 virtualenv 來建立虛擬環境,後來發現 Conda 這個工具,Conda 是一個開源的套件及虛擬環境管理工具,支援多種程式語言(Python, R…等),這邊來記錄一下它的使用方式,以下的指令是以 Windows 環境為主,Linux 或 MacOS 的指令可以參考官方文件。

Read more »

前言

tmux 是一個 Terminal Multiplexer, 它可以在一個 terminal 中開啟多個視窗、切割視窗區塊,讓我們在一個 terminal 中就能完成許多操作。它還可以保存 session 狀態,我們可以隨時離開(detach)這個連線 session, 也能夠隨時回到(attach)上次離開時的 session 狀態, 可以避免操作內容因為網路斷線而未儲存或是被中斷。而 tmux 會一直維持這個 session 直到被 delete 或是機器重新啟動。

Read more »