Sign inSign up

ithuan/ai-labs.ilrdf.org.tw

By ithuan

•Updated 7 days ago

族語AI成果網站

Image
0

288

ithuan/ai-labs.ilrdf.org.tw repository overview

⁠ai-labs.ilrdf.org.tw

族語AI成果網站。上線指令:

docker compose \
  -f docker-compose.yml \
  -f deploy/docker-compose-ai-labs.yml \
  -f deploy/docker-compose-formosan-ai.yml \
  up -d --pull always

⁠開發

⁠建立 Python virtual environment
python -m venv venv
⁠載入 Python virtual environment

Ta̍k-kái攏ài開,才來開發。

source venv/bin/activate
⁠安裝tox

tox是tī本機走test用--ê。

pip install tox
⁠更新套件版本

requirements-dev.in是記專案有直接用ê第三方套件。requirements-dev.txt是管kui專案全部第三方套件koh對應版本,保證開發、CI試驗、上線版本一致。

  1. 請先 pip install pip-tools tàu pip-tools⁠ 自動管理套件版本。

  2. 手動更新requirements-dev.in。

  3. 揀一款指令自動更新套件版本。

    # 有必要--ê才更新
    pip-compile
    # 盡量更新
    pip-compile --upgrade
    
  4. 檢查requirements-dev.txt更新狀態。

⁠第三方套件

請見第三方套件資訊.md⁠。

⁠正式機上線

上線前愛做:

  • 到正式機,複製.env.template,新增環境變數檔.env。
  • 正式機設定secrets:
    • ./secrets/django_secret_key.txt
    • ./secrets/postgres_passwd.txt
    • ./secrets/sentry_dsn.txt
    • ./secrets/ga_credentials.json (GA服務帳戶的金鑰。GA資源請原語會加服務帳戶做「檢視者」。)
  • 正式機媒體檔資料夾改權限:chmod 1777 media/。

上線指令:

docker compose \
  -f docker-compose.yml \
  -f deploy/docker-compose-ai-labs.yml \
  -f deploy/docker-compose-formosan-ai.yml \
  up -d --pull always

上線後愛做:

  • 正式機手動migrate:docker compose exec gunicorn python manage.py migrate。
  • 正式機新增後台管理員帳號:docker compose exec gunicorn python manage.py createsuperuser。

定期更新憑證:

由於原語會每次提供檔案不同,因此要特別注意,除了 .crt 之外,還需要有 root.cer, uca1.cer, uca2.cer,才能產生完整的憑證鍊。

以 20270127 到期的憑證為例:

cat ILRDFServer.crt uca_1.cer uca_2.cer root.cer > ilrdf.org.tw.2026.chained.crt
cp ILRDFServer.key ilrdf.org.tw.2026.key

用 scp 上傳到 diyong3 主機後,先備份現有憑證

cd git/Zugi
docker cp zugi-nginx-proxy-1:/etc/nginx/certs/ilrdf.org.tw.key ~/ilrdf.org.tw.old.key
docker cp zugi-nginx-proxy-1:/etc/nginx/certs/ilrdf.org.tw.crt ~/ilrdf.org.tw.old.chained.crt

再寫入新憑證

docker cp ~/ilrdf.org.tw.2026.key zugi-nginx-proxy-1:/etc/nginx/certs/ilrdf.org.tw.key
docker cp ~/ilrdf.org.tw.2026.chained.crt zugi-nginx-proxy-1:/etc/nginx/certs/ilrdf.org.tw.crt

最後重啟 nginx

docker compose exec nginx-proxy nginx -s reload

⁠測試機上線,僅跑起首頁

需要產生 .env,寫入 VIRTUAL_HOST 和 LETSENCRYPT_HOST。

docker compose -f docker-compose.yml -f docker-compose-tshi-homepage-only.yml up -d

Tag summary

Content type

Image

Digest

sha256:4601c53bf…

Size

454.9 MB

Last updated

7 days ago

docker pull ithuan/ai-labs.ilrdf.org.tw