I want to deploy 3 elixir app and 1 phoenix web app to Heroku.
My phoenix web app has dependency with 3 elixir in local path. and I want it to be that way in heroku as well.
How can I do this in heroku? someone says I can do this using Slug. But lack of information and I don't get it how to do this.
Please help
Related
I am trying to deploy my Spring Boot Web application to HEROKU and I am getting the following error:
***> -----> Building on the Heroku-20 stack
-----> Determining which buildpack to use for this app ! No default language could be detected for this app. HINT: This occurs
when Heroku cannot detect the buildpack to use for this application
automatically. See https://devcenter.heroku.com/articles/buildpacks
! Push failed***
I tried setting the build back to heroku/java manually only to also get an error.
The app is built in java so I don't understand what is happening exactly. This is my first time deploying an app online. Any help or guidance will be greatly appriciated
Beppe C. gave me the solution. My pom.xml file was not at the root. I restructured my repo and I got past that error but faced another one.
My Botpress chatbot is ready to get deployed. I have gone through the documentation provided in the Botpress official website about how to deploy it in the Heroku platform but couldn't figure out mot of the things. Can someone help me with it?
I was able to deploy Botpress on Heroku using this link: https://elements.heroku.com/buttons/botpress/botpress
The deployment uses master branch of oficial repo and also provision an free postgres db along with the app.
After deployment was made I used Import / Export of Botpress to move my flows from dev to prod.
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 have successfully deployed my app on Heroku, added add-ons, updated env var via the control-panel settings, etc. I am now looking at creating an app.json after the fact. Is it possible to query Heroku in some way to have an app.json generated from the hosted application that I've created?
I found the answer via another SO post: Heroku provides an App.json-creation tool. Simply log into Heroku, navigate to your app and add "/app-json" to the end.
For example:
https://dashboard.heroku.com/apps/your-app-name/app-json
I have 2 repositories residing in Bitbucket - Backend (Laravel app as the API and entry point) and Frontend (Main application front-end - VueJs app). My goal is to set up continuous deployment so whenever something is pushed in either of the repos in master (or other branch selected by me) branch it triggers something so that the whole app builds and reaches the AWS EC2 server.
I have considered/tried the following:
AWS CodePipeline and/or CodeDeploy. This looked like a great option
since the servers are in AWS as well. However, there is no support
for Bitbucket out of the box, so it would have to go to Bitbucket
Pipeline -> AWS Lambda -> AWS S3 -> AWS CodePipeline/CodeDeploy ->
AWS EC2. This seems like a very lengthy journey and I am not sure if
that's a good practice whatsoever.
Using Laravel Forge to deploy the Laravel app, and add additional steps to build the VueJS app. This seemed like a very basic solution,
however, the build process seems to fail there as it just takes long
time and crashes with no errors (whereas I can run exact same process
on my local machine or a different server hosted elsewhere). I am not
sure if this is issue with the way server is provisioned, the way
Forge runs deployment script or the server is too weak to handle it.
The main question of mine would be what are the best pracises for deploying the app of such components? I have read many tutorials/articles about deploying a NodeJS app, or a Laravel app, but haven't gotten good information about a scenario like this.
Would it be better to build the front-end app locally and version control the built JS file? Or should I create a Pipeline in Bitbucket that would build the app and then deploy it? Or is it the best to just version control and deploy the source files and leave the whole build process as the last step in the deployment process that will be done by the server that is hosting the app itself? There are also some articles suggesting hosting the whole front-end app in S3 bucket - would that be bad practise as well?
Appreciate any help and resources that would help!
From the sounds of things it sounds like you have two types of deployments you might want to run.
Laravel API: If you're using Laravel Forge already then this is a great way to go about deploying your Laravel App, takes care of most of the process and easy server management.
Vue.js App: Few things you can do here, I personally prefer using a provider like Vercel or Netlify who let you deploy your static sites/frontends for free-low costs. You can write custom build steps but they have great presets that should work out the box.
If you really want to keep everything on AWS then look into how to host static sites on AWS