diff --git a/Dockerfile b/Dockerfile index f056a8f..7794cde 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,4 +16,6 @@ WORKDIR /workspace COPY app/codex_account.js /usr/local/bin/codex-account RUN chmod +x /usr/local/bin/codex-account -CMD ["codex-account"] +ENV EXPECTED_CODEX_EMAIL=temp@gmail.com + +CMD ["sh", "-c", "email=\"$(codex-account)\"; if [ \"$email\" = \"$EXPECTED_CODEX_EMAIL\" ]; then printf 'Codex account email verified: %s\\n' \"$email\"; else printf 'Codex account email mismatch: expected %s, got %s\\n' \"$EXPECTED_CODEX_EMAIL\" \"${email:-}\" >&2; exit 1; fi"] diff --git a/README.md b/README.md index 11ef4f2..7a95dae 100644 --- a/README.md +++ b/README.md @@ -74,3 +74,12 @@ node app/codex_account.js docker build -t codex-account . docker run --rm -v "$HOME/.codex:/root/.codex:ro" codex-account ``` + +容器啟動時會執行 `codex-account`,並確認取得的 email 是否等於 `EXPECTED_CODEX_EMAIL`。預設值為 `temp@gmail.com`,可用環境變數覆寫: + +```bash +docker run --rm \ + -e EXPECTED_CODEX_EMAIL='temp@gmail.com' \ + -v "$HOME/.codex:/root/.codex:ro" \ + codex-account +```