How do you deploy a SANE stack application to Heroku?
I have created a Procfile web: node .app.js.
In my .app.js I have require('sane-cli') but I do not know how to call sane up from this file.
I am not even sure this is the right way to go as far as deployment is concerned.
Any help would be greatly appreciated.
Related
Very inexperienced user here...please be patient!
I inherited maintenance of Heroku app from someone no longer with the company. Having to re-deploy an app update is probably a once-a-year event, and here we are.
The instructions I have include building a standalone jar file containing my app and then deploying it to Heroku. Specifically the procedure for this is to use the Heroku CLI with the following command:
heroku deploy:jar webapp.jar -a my-app
Easy enough. Except he had his own instance of the Heroku CLI, and when I went to download my own copy, it appears that the deploy command no longer exists! Is this the case? Is this a deprecated command? Do I need to go through the process of figuring out how to set up a git repository to deploy this? (We are in fact using git to manage the source for this app, but it's behind our company firewall, so I'm not sure how practical/difficult it will be to set this up for Heroku). I just want to make sure I'm not missing something simple before investing a significant amount of time re-inventing the deployment process. Thanks.
The most popular mechanism is indeed to push the code from git to Heroku, providing the necessary files (i.e. profcile) to deploy the runtime.
An alternative is to create a Docker image and push it to the Heroku Registry (which in your case would require more reworking).
Refer to Deploy with Git, the firewall should not be a problem as Heroku will not access your code, but you will need to perform the push (git push heroku master)
I have to answer my own question because I was able to find the solution.
It turns out there is a plugin available for the heroku CLI that provides the deploy command. Running heroku plugins:install java will install the plugin that provides the deploy command in the heroku CLI.
See https://devcenter.heroku.com/articles/deploying-executable-jar-files for more information.
I've previously deployed apps on heroku written in Rails and in Express.js, and never come across the concept of a Procfile before. Now that I've just gone to deploy a Flask app, I discovered this Procfile concept and found that the app would not run correctly without it. The Heroku docs say nothing about this being Flask-specific, and imply it's needed for all apps.
What's up with that? Why didn't I need it before, but needed it now?
In the package.json it tells Heroku how to execute the program. That's JavaScript specific. In other languages there is no such file hence the need for a Procfile.
Heroku needs to know how to execute your project.
I wanted to deploy an simple static file serevr I built to Heroku but it seems as soons as it is deployed to heroku is crashes immediatly...
I never pushed an Go App to Heroku and I bet my ports config isw wrong...
What confuses me is that it passes th build process and it crashes immeditiatly...
I also uploaded the source code to Github: Sourcecode
I bet there are many errors in the code or something I didn't get right with port forwarding at Heroku but any advices or hints would be great!
I have deployed a rails application in a server using capistrano. What is the best way to debug this app in production?
Until now, when I used Apache+Phusion to deploy apps, I would write debug statements in the code and determine what was breaking.
But when I try the same now in the capistrano setup, I don't see the debug statements.
Where should I add the debug statements? In the code base that is pulled from the git repo? Or the current folder of capistrano?
Also, once I add the debug statement, is there anything I need to do to nginx server to reflect this change?
(Earlier, in Apache+Phusion, I used to do touch tmp/restart.txt to reflect the change)
Sorry for these questions, but this is my first time using Capistrano, Nginx.
I was deploying another agent's code, hence I wasn't fully aware of the deployment environment. On probing, I found out that the app server being used was Unicorn.
So, all I had to do to reflect the changes was restart Unicorn server by running unicorn appname restart
I have pushed a project to Heroku but I cant figure out how can I see the pushed code there on Heroku? Is that possible?
I appreciate any help.
I guess you have to connect your app to github to achieve this.