From 162f41295fbbb97f5ff431e5743d72158d0cb3d7 Mon Sep 17 00:00:00 2001 From: jirho Date: Thu, 15 May 2025 14:21:10 -0300 Subject: [PATCH] Actualizo el readme --- README.md | 62 +++++++++++++++++++++---------------------------------- 1 file changed, 23 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index 37c997e..9fee211 100644 --- a/README.md +++ b/README.md @@ -4,66 +4,50 @@ ## Intrucciones puesta en funcionamiento: -### Configuración inicial +Existen 2 archivos docker-compose, desarrollo (dentro de src/ ) y producción ( en la raíz del proyecto). -Existen 2 archivos docker-compose, desarrollo y producción, la principal diferencia estre ambos es que produccion no tiene un contenedor de base de datos, ya que debe conectarse a la de el sistema en producción de Declaraciones Juradas; además no tiene puertos para acceder tanto a la base de datos como a la API. +Principalmente debe crearse y configurarse un archivo .env en src/. -En el archivo docker-compose-{xxxxx}.yml pueden modificarse varias cosas según la version: +Es recomendable que para facilitar la configuración del .env realice una copia del archivo src/.env.example y complete con las credenciales que correspondan según como lo indica cada variable (es importante comprender que ingresar en cada variable para que el sistema funcione como se espera). -#### Desarrollo: -- Los puertos hacia afuera de la base de datos (para testing puede usarse un backup) y la API. -- Las credenciales de la base de datos (repetir luego en .env del contenedor de la api). +### Desarrollo (src/docker-compose.yml): -#### Producción: +Utiliza Laravel Sail y tiene un contenedor para la base de datos. -Es recomendable que para facilitar la configuración del .env del contenedor de la API que realice una copia del archivo src/.env.example y complete con las credenciales que correspondan según como lo indica cada variable (es importante comprender que ingresar en cada variable para que el sistema funcione como se espera). - -Asegurese también de que las credenciales de la base de datos que ingresa en este archivo sean las misma que definio en el archivo docker-compose-{xxxxx}.yml - -### Intrucciones: +#### Intrucciones: ```bash -$ https://github.com/fcyt-sistemas/api_ddjj -$ cd api_ddjj -$ docker-compose -f {nombre_archivo_docker_compose} up -d +$ git clone +$ cd api_ddjj/src/ +$ cp .env.example .env # configuraraciones de laravel +$ composer install # o composer install --ignore-platform-req=ext-iconv de ser necesario +$ ./vendor/bin/sail up -d ``` -Si usa la opción de desarrollo puede ocurrir que los volumenes de su repositorio clonado tengan permisos incompatibles con el usuario de apache. - -Si sale el siguiente error: - -```bash -The stream or file "/var/www/ddjj/storage/logs/laravel.log" could not be opened in append mode: failed to open stream -``` -Ejecute: +### Producción (docker-compose-produccion.yml): -```bash -$ chown -R www-data:www-data /var/www/ddjj/storage && -$ chmod -R 775 /var/www/ddjj/storage +Usa una imagen generada por Dockerfile a medida, debe configurar crear y configurar un archivo .env en la raiz del proyecto a partir del .env.example (tambien en la raiz del proyecto) si desea usar el contenedor de la base de datos generado por el docker compose de produccion. -``` +Si va a usar una pase de datos externa elimine el contenedor pgsql del docker compose (modifique su archivo en local, no modifique el repositorio). -### Configuraciones dentro del contenedor: +En caso de ser necesario -Para ingresar al contenedor: +#### Intrucciones: ```bash -$ docker exec -it -u root api_ddjj-ddjj-1 +$ git clone +$ cd api_ddjj +$ cp .env.example .env # configurar datos del contenedor pgsql +$ cd src +$ cp .env.example .env # configuraraciones de laravel +$ docker compose -f docker-compose-produccion up -d ``` -Coloque las credenciales indicadas modificando el archivo .env o copiando el contenido del archivo que creo previamente copiando el .env.example: - -#### Base de Datos: - -Se espera que se la API a la base de datos de Declaraciones Juradas en producción, debe ingresar las credenciales en el .env. - -#### Configuración final: +### Configuración final: Dentro del contenedor ejecute lo siguiente para que el sistema funcione correctamente ```bash -$ cd /var/www/ddjj -$ php artisan optimize $ php artisan key:generate $ php artisan optimize ```