Para realizar el primer build de los contenedores es necesario crear los archivos mencionados al final de este README en la sección Variables de entorno y luego correr el comando docker-compose up --build
el cual hace el seteo de todo el espacio de trabajo necesario.
Nota: Cuando se hace un cambio en el gemfile para incluir una gema nueva en el proyecto, es necesario correr este comando nuevamente.
Cuando solamente se desea levantar los contenedores, se debe correr el comando docker-compose up
.
Cuando se quiere correr algun comando de rails para crear migraciones, modelos, controladores, etc. Se debe correr lo siguiente: docker-compose run --rm web <comando Rails>
donde en <comando Rails>
se debe agregar el comando que se quiere correr.
Tambien se puede entrar directamente a la bash del contenedor para poder utilizar los comandos de forma directa. Para esto, primero debemos correr docker-compose run --rm web bash
. Esto nos llevara a la bash del contenedor, y ahi podemos usar los comandos de rails de la forma típica.
Al terminar de trabajar, se puede correr el comando docker-compose down
para bajar los contenedores que se estaban utilizando.
Para poder correr la aplicación y levantar de forma correcta los contenedores, es necesario crear 2 archivos, uno llamado .env.development y otro llamado .env.test con el siguiente contenido. Notar que la DB, el usuario y la contraseña puede ser cualquiera, solo es importante que se reemplacen los valores de forma correcta en la url.
.env.development:
POSTGRES_DB=database
POSTGRES_USER=user
POSTGRES_PASSWORD=password
DATABASE_URL=postgres://user:password@db:5432/database
URL=http://localhost:3000
.env.test:
POSTGRES_DB=database
POSTGRES_USER=user
POSTGRES_PASSWORD=password
DATABASE_URL=postgres://user:password@db-test:5432/database
Se debe crear un archivo config/local_env.yml cuyo contenido debe verse así:
MAIL_USERNAME: 'mail'
MAIL_PASSWORD: 'password'
donde 'mail' es el mail de la organización y password su contraseña.
Los mails se pueden visualizar en la ruta http://localhost:3000/rails/mailers
Luego de correr docker compose up --build
(solo para instalar la gema) se puede correr el comando yardoc 'app/controllers/*.rb' 'app/models/*rb'
para generar la documentación de la api.