我一直在尝试在 Heroku 上托管一个不和谐的机器人。机器人链接:https://github.com/Just-Some-Bots/MusicBot
我已经设置好了所有内容,并成功地将其托管在自己的计算机上。问题是我想在像 Heroku 这样的在线服务上托管它。成功部署,它说找到了一个python应用程序。但是我没有看到不和谐的机器人上线......
这就是我认为的问题所在,当我在计算机上托管它时,我必须运行"runbot.bat"文件看起来像这样:
@ECHO off
CHCP 65001 > NUL
CD /d "%~dp0"
SETLOCAL ENABLEEXTENSIONS
SET KEY_NAME="HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced"
SET VALUE_NAME=HideFileExt
FOR /F "usebackq tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
SET ValueName=%%A
SET ValueType=%%B
SET ValueValue=%%C
)
IF x%ValueValue:0x0=%==x%ValueValue% (
ECHO Unhiding file extensions...
START CMD /c REG ADD HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced /v HideFileExt /t REG_DWORD /d 0 /f
)
ENDLOCAL
IF EXIST %SYSTEMROOT%py.exe (
CMD /k py.exe -3.5 run.py
EXIT
)
python --version > NUL 2>&1
IF %ERRORLEVEL% NEQ 0 GOTO nopython
CMD /k python run.py
GOTO end
:nopython
ECHO ERROR: Python has either not been installed or not added to your PATH.
:end
PAUSE
我从这里学到了一个名为"procfile"的文件:https://www.reddit.com/r/discordapp/comments/5dkqpd/help_how_do_you_host_a_discord_bot_from_heroku/
我试过了
worker: runboot.bat
,
worker: python run.py
和
worker: python bot.py
但没有运气。我认为.bat文件的进程类型丢失或错误。如何在 Heroku 上运行.bat文件?或者,如果有人有托管此机器人的经验,将不胜感激。谢谢!
Heroku运行Linux。因此,运行批处理文件(以及从该 github 存储库ffmpeg.exe
(在技术上是不可能的。
A dyno is a lightweight Linux container that runs a single user-specified command.
医生说。
因此,请尝试一些与Linux兼容的程序。
附言运行heroku logs
以获取有关应用程序无法正常工作的原因的详细信息。