若希望將所有請求保留在自有基礎架構內,可使用 Docker Hub 上的官方映像檔執行私有執行個體,同時支援 amd64 與 arm64 架構。

快速開始

最快的啟動方式:

docker run -d --init -p 8080:8080 lineofflight/frankfurter

此指令會在連接埠 8080 啟動 Frankfurter 並使用暫存資料庫。在初始資料回填完成前,部分端點可能會回傳空結果。

正式環境

在正式環境中,請掛載資料卷(volume)以便在容器重啟後保留 SQLite 資料庫:

docker run -d --init -p 8080:8080 \
  -e DATABASE_URL="sqlite:///data/db.sqlite3" \
  -v ./data:/data \
  --pull always \
  lineofflight/frankfurter

若未掛載資料卷,資料庫僅為暫存狀態,每次重新啟動時皆會重新建立。

加上 --pull always 參數可確保 Docker 在每次執行時拉取最新映像檔。

API 金鑰

部分資料來源需要 API 金鑰,所有金鑰皆為免費且選填。

docker run -d --init -p 8080:8080 \
  -e DATABASE_URL="sqlite:///data/db.sqlite3" \
  -e BAM_API_KEY="your_key" \
  -e BANXICO_API_KEY="your_key" \
  -e BCCH_USER="your_email" \
  -e BCCH_PASS="your_password" \
  -e BOT_API_KEY="your_key" \
  -e FRED_API_KEY="your_key" \
  -e TCMB_API_KEY="your_key" \
  -v ./data:/data \
  --pull always \
  lineofflight/frankfurter
BAM_API_KEY
摩洛哥中央銀行(Bank Al-Maghrib)資料。請至 apihelpdesk.centralbankofmorocco.ma 申請。
BANXICO_API_KEY
墨西哥銀行(Banco de México)資料。請至 banxico.org.mx 申請。
BCCH_USER 與 BCCH_PASS
智利中央銀行(Banco Central de Chile)資料。請至 bcentral.cl 申請。
BOT_API_KEY
泰國銀行(Bank of Thailand)資料。請至 gateway.api.bot.or.th 申請。
FRED_API_KEY
美國聯邦準備理事會(Federal Reserve)資料。請至 fred.stlouisfed.org 申請。
TCMB_API_KEY
土耳其共和國中央銀行資料。請至 evds3.tcmb.gov.tr 申請。