В качестве демонстрационной и демо-версии я хочу запустить вопрос в рамках бесплатного плана heroku. Для этого я нашел этот хороший репозиторий от patcon . Он раздвоил его и улучшил в моих глазах, объяснив, как вы постоянно запускаете его как веб-диностенцию, и поэтому он также принимает запросы hhtp, такие как веб-перехватчики. Для развертывания приложения я решил воспользоваться методом git pu sh.
Я клонировал репозиторий с patcon на свою машину windows, настроил его в соответствии с моими потребностями и отправил на heroku. Вначале это не работало, потому что среда сборки не обнаруживала сборочный пакет. Поэтому я установил для переменной среды BUILDPACKS_URL значение https://github.com/patcon/matterbridge-heroku#master
. После этого сборка прошла успешно, но возникло несколько проблем. В журналах было упомянуто, что в разрешении на выполнение start. sh и envsubst отказано. Как и в упомянутых документах от Heroku, я создал файл .profile с помощью chmod + x для начала. sh и lib / envsubst.
Итак, git преобразует строку, заканчивающуюся из формата windows, в linux один. Но не разрешения. В конце концов, я не знаю, работает ли загрузка.
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 4 threads
Writing objects: 100% (3/3), 318 bytes | 318.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Matterbridge app detected
remote: -----> Downloading Matterbridge: https://github.com/42wim/matterbridge/releases/download/v1.17.5/matterbridge-linux-amd64
remote: -----> Discovering process types
remote:
remote: -----> Compressing...
remote: -----> Launching...
remote: Released v35
remote: https://???.herokuapp.com/ deployed to Heroku
remote:
remote: Verifying deploy... done.
Но даже если я изменяю в файле bin / compile путь и версию загрузки, всегда загружается версия v1.17.5 . Также, если я изменю его с помощью app. json. Честно говоря, я только догадываюсь, что делает этот файл. Я предполагаю, что это используется, когда я хочу развернуть приложение с помощью этого метода кнопки heroku для установки переменных среды.
Следующее сообщение указывает на то, что исполняемый файлatterbridge не загружен или находится не в нужном месте .
2020-06-19T17:37:13.074592+00:00 app[web.1]: [heroku-exec] Starting
2020-06-19T17:37:13.116550+00:00 app[web.1]: ./matterbridge: line 1: Not: command not found
2020-06-19T17:37:13.181167+00:00 heroku[web.1]: Process exited with status 127
2020-06-19T17:37:13.214787+00:00 heroku[web.1]: State changed from starting to crashed
2020-06-19T19:10:11.450748+00:00 heroku[web.1]: State changed from crashed to starting
2020-06-19T19:10:11.759082+00:00 heroku[web.1]: Starting process with command `./start.sh`
2020-06-19T19:10:14.649261+00:00 app[web.1]: [heroku-exec] Starting
2020-06-19T19:10:14.671276+00:00 app[web.1]: ./matterbridge: line 1: Not: command not found
2020-06-19T19:10:14.732134+00:00 heroku[web.1]: Process exited with status 127
2020-06-19T19:10:14.787002+00:00 heroku[web.1]: State changed from starting to crashed
Я попытался посмотреть через heroku ps:exec
, могу ли я увидеть структуру папок. Но поскольку дино выходит после сбоя, это невозможно. И я также попытался запустить heroku local
, чтобы узнать, собирается ли приложение локально. Но это не так.
Как я объяснил ранее, пока pu sh и предварительная сборка не загружают другие версии, когда я настраиваю его, я догадался, что активировано избыточное кэширование. Вот и попробовал очистить кеш с помощью heroku repo:purge_cache
.
Может кто мне поможет или подскажет. Заранее спасибо