如何在Heroku上运行.bat文件? (尝试在Heroku上设置discord音乐机器人)

时间:2017-02-06 05:48:41

标签: python batch-file heroku discord

我一直试图在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="HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"
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 HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /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文件? 或者,如果有人有一些托管这个机器人的经验,任何帮助将非常感激。谢谢!

1 个答案:

答案 0 :(得分:0)

Heroku运行Linux。因此,运行批处理文件(以及来自该github存储库的ffmpeg.exe)在技术上是不可行的。

  

A dyno is a lightweight Linux container that runs a single user-specified command.docs

所以请尝试一些与Linux兼容的程序。

P.S。运行heroku logs以获取有关您的应用无法正常运作的详细信息。