Go to file
Angel Rodriguez 10e226fe85 Add installer/README-en.md
Traducción al inglés.
2024-11-29 06:40:57 +01:00
api Add api/README-en.md 2024-11-29 06:15:35 +01:00
config refs #734 Removes innecesaries parameters and changes php platform to 8.2 2024-09-16 17:56:44 +02:00
docker Add mock api for testing dockerfile 2024-09-16 17:44:06 +02:00
gitlib Add gitlib/README-en.md 2024-11-29 05:20:38 +01:00
installer Add installer/README-en.md 2024-11-29 06:40:57 +01:00
packages Move packages to /usr/share 2024-11-28 15:00:07 +01:00
src refs #734 Adds new endpoints sync and backup and status endpoint 2024-09-13 17:20:01 +02:00
.env refs #734 Removes innecesaries parameters and changes php platform to 8.2 2024-09-16 17:56:44 +02:00
Dockerfile Update to 24.04, solves deployment issue 2024-09-18 20:19:23 +02:00
README.md refs #734 Adds README for Api installation 2024-09-13 13:37:46 +02:00
composer.json refs #734 Removes innecesaries parameters and changes php platform to 8.2 2024-09-16 17:56:44 +02:00
nelmio_api_doc.yaml refs #734 just changes name and description in swagger web page 2024-09-18 09:32:15 +02:00

README.md

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:

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.

sudo nano /etc/nginx/sites-available/oggit

Copia y pega la siguiente configuración en el archivo:

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:

sudo ln -s /etc/nginx/sites-available/oggit /etc/nginx/sites-enabled/

Reinicia Nginx para aplicar los cambios:

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:

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:

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