Skip to content

使用upstash数据库但始终提示D1错误导致无法部署 #455

Description

@VictorFrankenstein

最新版本

  • 我使用的是最新版本

问题描述

严格按照readme使用cloudflare worker+upstash部署,并使用workflow自动触发,在多个版本以前均能够正常使用。
现象:在github sync了最新仓库,无法正常部署。github和cloudflare均有报错。

复现步骤

1.严格按照readme使用cloudflare+upstash方案部署
2.
3.

网络请求与日志

Github侧workflow在build and push阶段报错如下:


#24 [auth] mtvpls/moontvplus-lite:pull,push token for ghcr.io
#24 DONE 0.0s

#23 exporting to image
#23 exporting manifest sha256:0ea3e67ef4c45fb2642f45ed47cfb6f9cc39836d838d7304b19c7a38d6f1f252 done
#23 exporting config sha256:9a0e0255f3b06c63a3d0aa491dfd55ebd07b34b7cb49343a0974807cff04a07e done
#23 exporting attestation manifest sha256:d339b16a54a43554a76882973d1e676232702adfb7af24805b197d216133adc1 done
#23 exporting manifest list sha256:82324fdac14b4d63a2d40d7a8d476597f1a823dbd348a4aab28b5830d66d3cf5 done
#23 pushing layers
#23 pushing layers 0.3s done
#23 ERROR: failed to push ghcr.io/mtvpls/moontvplus-lite:latest: denied: permission_denied: The requested installation does not exist.
------
 > exporting to image:
------
ERROR: failed to build: failed to solve: failed to push ghcr.io/mtvpls/moontvplus-lite:latest: denied: permission_denied: The requested installation does not exist.
Error: buildx failed with: ERROR: failed to build: failed to solve: failed to push ghcr.io/mtvpls/moontvplus-lite:latest: denied: permission_denied: The requested installation does not exist.

我不可能有mtvpls/moontvplus-lite的权限,而这部分似乎被写死必须提交,而且不知为何还一定是lite的镜像,每次部署都持续报错。


Cloudflare侧部署阶段报错报错如下:

🌀 Building list of assets...
17:34:48.861
✨ Read 245 files from the assets directory /opt/buildhome/repo/.open-next/assets
17:34:49.245
🌀 Starting asset upload...
17:34:50.892
🌀 Found 2 new or modified static assets to upload. Proceeding with upload...
17:34:50.892
+ /BUILD_ID
17:34:50.892
+ /sw.js
17:34:51.585
Uploaded 1 of 2 assets
17:34:51.837
Uploaded 2 of 2 assets
17:34:51.839
✨ Success! Uploaded 2 files (170 already uploaded) (0.94 sec)
17:34:51.839
17:34:52.260
Total Upload: 13766.90 KiB / gzip: 3199.75 KiB
17:34:52.947
Your Worker has access to the following bindings:
17:34:52.948
Binding                              Resource                  
17:34:52.948
env.DB (moontvplus)                  D1 Database               
17:34:52.948
env.ASSETS                           Assets                    
17:34:52.948
env.NODE_ENV ("production")          Environment Variable      
17:34:52.948
env.BUILD_TARGET ("cloudflare")      Environment Variable      
17:34:52.948
17:34:52.955
17:34:52.956
✘ [ERROR] A request to the Cloudflare API (/accounts/6daea86c3f21183e409869432367652e/workers/scripts/moontv-plus/versions) failed.
17:34:52.957
17:34:52.957
  binding DB of type d1 must have a valid `database_id` specified [code: 10021]
17:34:52.957
  To learn more about this error, visit: https://developers.cloudflare.com/workers/observability/errors/#validation-errors-10021
17:34:52.957
17:34:52.957
  
17:34:52.957
  If you think this is a bug, please open an issue at: https://github.com/cloudflare/workers-sdk/issues/new/choose
17:34:52.957
17:34:52.957
17:34:52.969
🪵  Logs were written to "/opt/buildhome/.config/.wrangler/logs/wrangler-2026-08-04_09-34-44_869.log"
17:34:53.032
ERROR Wrangler command failed
17:34:53.076
17:34:53.125
✘ [ERROR] 
17:34:53.125
17:34:53.125
17:34:53.125
If you think this is a bug then please create an issue at https://github.com/cloudflare/workers-sdk/issues/new/choose
17:34:53.139
🪵  Logs were written to "/opt/buildhome/.config/.wrangler/logs/wrangler-2026-08-04_09-34-40_060.log"
17:34:53.186
Failed: error occurred while running deploy command

我十分确认cloudflare使用的是upstash,配置好了环境变量,但不知为何后台始终要求访问D1, 导致持续部署失败。

Image

部署方式

Cloudflare

其他部署方式

No response

浏览器类型

Chrome

其他浏览器

No response

是否为移动设备

我已认真填写所有复现步骤并正确选择了对应环境

  • 我已知晓不认真填写不会得到回应且可能会被close

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions