refs #734 Adds README for Api installation
parent
9b908e9df4
commit
c5fd09704b
126
README.md
126
README.md
|
@ -1,2 +1,128 @@
|
|||
# OpenGnsys - Git
|
||||
|
||||
### Manual de Instalación para Desplegar la API "oggit"
|
||||
|
||||
Este manual describe los pasos necesarios para descargar, instalar, configurar y desplegar la API "oggit" en un servidor, incluyendo la configuración de **Nginx** y la integración con **Nelmio API Doc**.
|
||||
|
||||
#### Requisitos Previos:
|
||||
- **PHP 8.2** o superior.
|
||||
- **Composer** instalado.
|
||||
- **Nginx** configurado.
|
||||
- **Symfony** 5.x o 6.x.
|
||||
- **Git**.
|
||||
|
||||
### 1. Descargar el Repositorio
|
||||
|
||||
Clona el repositorio del proyecto en el servidor donde deseas desplegar la API. Asegúrate de que el servidor tenga acceso a Git.
|
||||
|
||||
|
||||
### 2. Instalar Dependencias
|
||||
|
||||
Una vez descargado el repositorio, navega a la raíz del proyecto y ejecuta el siguiente comando para instalar todas las dependencias necesarias usando **Composer**:
|
||||
|
||||
```bash
|
||||
composer install
|
||||
```
|
||||
|
||||
### 3. Configurar Nginx
|
||||
|
||||
A continuación, debes configurar **Nginx** para servir el proyecto Symfony. Crea un archivo de configuración en `/etc/nginx/sites-available/oggit` o edita tu archivo de configuración Nginx existente.
|
||||
|
||||
```bash
|
||||
sudo nano /etc/nginx/sites-available/oggit
|
||||
```
|
||||
|
||||
Copia y pega la siguiente configuración en el archivo:
|
||||
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name localhost; # Reemplaza 'localhost' por la IP del servidor si es necesario
|
||||
|
||||
# Raíz del documento para el proyecto Symfony
|
||||
root /opt/oggit/public;
|
||||
|
||||
# Bloque para manejar las solicitudes a /oggit
|
||||
location /oggit {
|
||||
try_files $uri $uri/ /index.php?$query_string;
|
||||
# Aumentar el tiempo de espera por el install oglive
|
||||
proxy_read_timeout 600;
|
||||
proxy_connect_timeout 600;
|
||||
proxy_send_timeout 600;
|
||||
send_timeout 600;
|
||||
}
|
||||
|
||||
# Bloque para manejar las solicitudes a index.php
|
||||
location ~ ^/index.php(/|$) {
|
||||
include fastcgi_params;
|
||||
fastcgi_pass unix:/run/php/php8.2-fpm.sock; # Asegúrate de que esto sea correcto
|
||||
fastcgi_split_path_info ^(.+\.php)(/.*)$;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
fastcgi_param PATH_INFO $fastcgi_path_info;
|
||||
fastcgi_param DOCUMENT_ROOT $document_root;
|
||||
internal;
|
||||
}
|
||||
|
||||
# Bloque para devolver 404 en cualquier solicitud a archivos PHP que no sean index.php
|
||||
location ~ \.php$ {
|
||||
return 404;
|
||||
}
|
||||
|
||||
# Logs de error y acceso para el proyecto Symfony
|
||||
error_log /var/log/nginx/oggit_error.log;
|
||||
access_log /var/log/nginx/oggit_access.log;
|
||||
|
||||
location /api/doc {
|
||||
try_files $uri /index.php?$query_string;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Guarda los cambios y activa el sitio:
|
||||
|
||||
```bash
|
||||
sudo ln -s /etc/nginx/sites-available/oggit /etc/nginx/sites-enabled/
|
||||
```
|
||||
|
||||
Reinicia Nginx para aplicar los cambios:
|
||||
|
||||
```bash
|
||||
sudo systemctl restart nginx
|
||||
```
|
||||
|
||||
### 4. Configurar Nelmio API Doc
|
||||
|
||||
Si usas **NelmioApiDocBundle** para la documentación Swagger, debes configurar **Nelmio** para aceptar rutas específicas, como las rutas de `/oggit`. Para hacerlo, edita el archivo de configuración **Nelmio**:
|
||||
|
||||
```bash
|
||||
sudo nano /opt/oggit/config/packages/nelmio_api_doc.yaml
|
||||
```
|
||||
|
||||
Asegúrate de que el archivo tenga la siguiente configuración para permitir las rutas de la API:
|
||||
|
||||
```yaml
|
||||
nelmio_api_doc:
|
||||
documentation:
|
||||
info:
|
||||
title: Oggit API
|
||||
description: Documentación de la API Oggit
|
||||
version: 1.0.0
|
||||
areas: # filtrar las áreas documentadas
|
||||
path_patterns:
|
||||
- ^/oggit
|
||||
```
|
||||
|
||||
Guarda los cambios.
|
||||
|
||||
### 5. Verificar la Instalación
|
||||
|
||||
1. **Revisar la API**: Accede a tu API a través de `http://<IP-del-servidor>/oggit`. Si todo está correctamente configurado, deberías poder hacer solicitudes a los endpoints definidos.
|
||||
|
||||
2. **Documentación Swagger**: Accede a la documentación Swagger de la API en `http://<IP-del-servidor>/api/doc` para ver los endpoints documentados.
|
||||
|
||||
### 6. Logs y Depuración
|
||||
|
||||
Los registros de Nginx se pueden consultar para verificar posibles errores durante el despliegue. Los logs se encuentran en las siguientes rutas:
|
||||
|
||||
- **Logs de error**: `/var/log/nginx/oggit_error.log`
|
||||
- **Logs de acceso**: `/var/log/nginx/oggit_access.log`
|
||||
|
|
Loading…
Reference in New Issue