Despliegue a Gigalixir

Cristian Rengifo
2 min readMar 5, 2020

--

Gigalixir es una Paas (Plataform as service) completamente compatible con elixir. Es muy fácil de configurar.

Lo primero es crear una cuenta en el sitio web, una vez ingresamos llama la atención que recomiendan el uso de su CLI.

Note: The web interface you see here does not implement all of Gigalixir's features yet. We highly recommend installing the command-line interface

En ese orden de ideas empezamos por instalar el CLI en nuestra máquina.

sudo pip3 install -U gigalixir --ignore-installed six

lo siguiente es iniciar sesion desde el CLI ingresando en el terminal gigalixir login

Ahora se debe ingresar a la aplicación, en este caso la Api Rest que creamos en el articulo anterior y creamos una aplicación y db; para esto debemos tener el proyecto en un repositorio git.

gigalixir create
gigalixir pg:create --free

Ahora se debe obtener el nombre de la aplicación ingresando en la terminal gigalixir apps y fijarnos en la propiedad unique_name pues ese será el nombre de la aplicación.

Ahora en config/prod.exs se debe modificar la url del host por el nombre de la aplicación agregandole .gigalixirapp.com

Ahora debemos definir las versiones de elixir y erlang usadas en el proyecto, para eso creamos un archivo elixir_buildpack.config que en mi caso es

elixir_version=1.8.0
erlang_version=21.1

ahora para finalizar subimos los cambios con

git push gigalixir master

Una vez hecho esto, esperamos a que termine el proceso de despliegue y visitamos la url de nuestra aplicación.

https://your-app-name.gigalixirapp.com

Ahora que ya tenemos nuestra Api Rest desplegada procedemos a correr las migraciones con

gigalixir run mix ecto.migrate

Ahora para finalizar vamos a crear un Brand en nuestra API desplegada

Se crea de forma exitosa, ahora podemos listar el registro.

Se puede observar que desplegar nuestra API también es muy sencillo.

--

--

Cristian Rengifo
Cristian Rengifo

Written by Cristian Rengifo

Software Developer #ASPNET, #WebApi, #MVC, #Angular, #Informix4GL and learning #Elixir

No responses yet