[Documentación de las rutas de la API](https://documenter.getpostman.com/view/28160221/2sA3JDh5PC#c1acf864-e310-4856-a2f8-17ba05a5b88a)
## Intrucciones puesta en funcionamiento:
### Configuración inicial
Existe documentacón del codigo generada con PHP Documentor comprimida y subida a este repositorio.
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.
## Intrucciones puesta en funcionamiento:
En el archivo docker-compose-{xxxxx}.yml pueden modificarse varias cosas según la version:
Existen 2 archivos docker-compose, desarrollo (dentro de src/ ) y producción ( en la raíz del proyecto).
#### 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).
Principalmente debe crearse y configurarse un archivo .env en src/.
#### Producción:
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).
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).
### Desarrollo (src/docker-compose.yml):
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
Utiliza Laravel Sail y tiene un contenedor para la base de datos.
### Intrucciones:
#### Intrucciones:
```bash
$ https://github.com/fcyt-sistemas/api_ddjj
$ cd api_ddjj
$ docker-compose -f {nombre_archivo_docker_compose} up -d
$ git clone <url_de_este_repositorio>
$ 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.
### Producción (docker-compose-produccion.yml):
Si sale el siguiente error:
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.
```bash
The stream or file "/var/www/ddjj/storage/logs/laravel.log" could not be opened in append mode: failed to open stream