Deploy Proyecto Laravel en Heroku

 


Deploy en Heroku

  1. Crear cuenta en Heroku:
  2. Descargar e instalar Heroku CLI:
  • Crear en la raíz del proyecto el archivo Procfile (sin extensión) para elegir un servidor apache en Heroku y también indicarle la ubicación del archivo principal index.php:
      web: vendor/bin/heroku-php-apache2 public/
    
  1. Iniciar sesión en Heroku:
    • $ heroku login
  2. Crear proyecto en Heroku:
    • $ heroku create
  3. Subir proyecto a Heroku desde la terminal:
    • $ git remote
    • $ git add .
    • $ git commit -m "Procfile"
    • $ git push heroku master
  4. Registrar variables de entorno de la aplicación desde la terminal:
    • $ heroku config:add APP_NAME=CVPetrix
    • $ heroku config:add APP_ENV=production
    • $ heroku config:add APP_KEY=base64:6FJwS0Ii5P9k5qhEgPrmJ5VcLKkcBgtpci6b/yFlxD0=
    • $ heroku config:add APP_DEBUG=true
    • $ heroku config:add APP_URL=https://obscure-gorge-27194.herokuapp.com/
  5. Crear base de datos Postgre SQL desde la terminal:
    • $ heroku addons:create heroku-postgresql:hobby-dev
    • $ heroku pg:credentials:url

    Nota: la salida de la última línea de comando nos servirá para configurar las variables de entorno de la base de datos:

     "dbname=dcaueuf8ba5i03 host=ec2-44-194-54-123.compute-1.amazonaws.com port=5432 user=tmhmwhvfuvccgp password=6e130e55e265949fe763e59315a6d98b0acadfcc17e1ef05fa6bf67cbf38c066 sslmode=require"
     Connection URL:
     postgres://tmhmwhvfuvccgp:6e130e55e265949fe763e59315a6d98b0acadfcc17e1ef05fa6bf67cbf38c066@ec2-44-194-54-123.compute-1.amazonaws.com:5432/dcaueuf8ba5i03
    
  6. Registrar variables de entorno de la base de datos desde la terminal:
    • $ heroku config:add DB_CONNECTION=pgsql
    • $ heroku config:add DB_HOST=ec2-44-194-54-123.compute-1.amazonaws.com
    • $ heroku config:add DB_PORT=5432
    • $ heroku config:add DB_DATABASE=dcaueuf8ba5i03
    • $ heroku config:add DB_USERNAME=tmhmwhvfuvccgp
    • $ heroku config:add DB_PASSWORD=6e130e55e265949fe763e59315a6d98b0acadfcc17e1ef05fa6bf67cbf38c066
  7. Ejecutar migraciones:
    • $ heroku run bash
    • $ php artisan migrate --seed



Deploy en Heroku mediante GitHub

Crear repositorio del proyecto en GitHub

  1. Ir a GitHub y hacer login:
  2. Crear un nuevo repositorio:
    • Repository name: cvpetrix
  3. Subir proyecto a GitHub:

Deploy en Heroku

  1. Crear en la raíz del proyecto el archivo Procfile (sin extensión) para elegir un servidor apache en Heroku y también indicarle la ubicación del archivo incial index.php:
     web: vendor/bin/heroku-php-apache2 public/
    
  2. Crear cuenta en Heroku:
  3. Ingresar a Heroku e ir a Dashboard.
  4. Crear un nuevo proyecto en New > Create new app
    • Nombre cvpetrix
  5. Ir a Deploy y dar clic en GitHub.
  6. Clic en el botón Connect to GitHub e ingresar las credenciales.
  7. Seleccionar el repositorio cvpetrix y presionar el botón Connect.
  8. Para tener siempre la ultima actualización de nuestro proyecto se recomienda presionar el botón Enabla Automatic Deploys.
  9. Presionar el botón Deploy Branch.
  10. Descargar e instalar Heroku CLI:
  11. En la terminal iniciar sesión en Heroku:
    • $ heroku login
  12. Víncular con la aplicación de Heroku cvpetrix:
    • $ git remote add heroku git.heroku.com/cvpetrix.git
      • (git remote set-url Origin git.heroku.com/cvpetrix.git)
    • $ heroku git:remote -a cvpetrix
  13. Registrar variables de entorno de la aplicación desde la terminal:
    • $ heroku config:add APP_NAME=CVPetrix
    • $ heroku config:add APP_ENV=production
    • $ heroku config:add APP_KEY=base64:6FJwS0Ii5P9k5qhEgPrmJ5VcLKkcBgtpci6b/yFlxD0=
    • $ heroku config:add APP_DEBUG=true
    • $ heroku config:add APP_URL=https://cvpetrix.herokuapp.com/
  14. Crear base de datos Postgre SQL desde la terminal:
    • $ heroku addons:create heroku-postgresql:hobby-dev
    • $ heroku pg:credentials:url

    Nota: la salida de la última línea de comando nos servirá para configurar las variables de entorno de la base de datos:

     Connection info string:
     "dbname=db6unq9m90dvkv host=ec2-18-235-4-83.compute-1.amazonaws.com port=5432 user=vcsyvufmsdpbhn password=****** sslmode=require"
     Connection URL:
     postgres://vcsyvufmsdpbhn:220b810793f6f9780ca458b1b4a95c4246b16355166edc319686cdd3712e4cc6@ec2-18-235-4-83.compute-1.amazonaws.com:5432/db6unq9m90dvkv
    
  15. Registrar variables de entorno de la base de datos desde la terminal:
    • $ heroku config:add DB_CONNECTION=pgsql
    • $ heroku config:add DB_HOST=ec2-18-235-4-83.compute-1.amazonaws.com
    • $ heroku config:add DB_PORT=5432
    • $ heroku config:add DB_DATABASE=db6unq9m90dvkv
    • $ heroku config:add DB_USERNAME=vcsyvufmsdpbhn
    • $ heroku config:add DB_PASSWORD=******
  16. Ejecutar migraciones:
    • $ heroku run bash
    • ~ $ php artisan migrate --seed
    • ~ $ exit
  17. Salir de Heroku:
    • $ heroku logout
  18. Desconectar con repositorio Heroku:
    • $ git remote rm heroku
  19. Volver a conectar con repositorio GitHub:

Actualizar repositorio del proyecto en GitHub

  1. Ejecutar
    • $ git add .
    • $ git commit -m "Actualización"
    • $ git push -u origin main

Comentarios

Entradas más populares de este blog

Ruta hacia el desarrollador web full stack en Soluciones++

Soluciones++ para VBA