Dokku:如何将heroku堆栈更改为heroku-20或heroku-22(从heroku-18)

flo*_*tup 5 git django dokku

我一直在使用 Dokku(即 Heroku)进行部署的 Django (Python) 项目。直到今天,所有部署都运行良好,但从今天早上开始,我收到此错误消息:

请求的运行时“python-3.10.12”对此堆栈(heroku-18)不可用。

我知道 python-3.10.12 在 heroku-18 上可用,所以我认为我(最终)必须更改堆栈,因为 heroku-18 已被弃用。

我尝试在 Dokku 上使用此命令:

dokku buildpacks:add --index 1 {APP-NAME} https://github.com/heroku/heroku-buildpack-python.git

但这并没有解决我的问题(heroku-18仍在使用)。

任何帮助将不胜感激

小智 4

面对类似的情况,我的解决方案是升级使用的堆栈构建器(而不是目标构建包)。你可以看看这个dokku herokuish 文档

您需要检查您的应用程序当前使用哪个堆栈:

dokku buildpacks:report my-app
Run Code Online (Sandbox Code Playgroud)

您可以使用 docker 命令更新或下载目标herokuish gliderlabs映像。

就我而言,我将应用程序配置为使用gliderlabs/herokuish:latest-20Heroku 20 附带的图像:

dokku buildpacks:set-property my-app stack gliderlabs/herokuish:latest-20.
Run Code Online (Sandbox Code Playgroud)