bolt Valebyte VPS desde $4/mes — NVMe, despliegue en 60s.

Obtener VPS arrow_forward

Frigate en VPS: instalación, configuración y mantenimiento

calendar_month 15 de junio de 2026 schedule 22 min de lectura visibility 35 vistas
person
Valebyte Team
Frigate en VPS: instalación, configuración y mantenimiento

La instalación de Frigate en un VPS proporciona un sistema de videovigilancia potente y privado con detección de objetos, utilizando los recursos computacionales de un servidor en la nube para un procesamiento eficiente de los flujos de video.

¿Qué es Frigate y por qué `Frigate VPS` es la elección óptima?

Frigate es un sistema de videovigilancia de código abierto de alto rendimiento, diseñado específicamente para el procesamiento local de flujos de video y la detección de objetos en tiempo real. A diferencia de muchas soluciones en la nube, Frigate prioriza la privacidad y la velocidad, procesando todos los datos en su propio equipo en lugar de enviarlos a servidores de terceros. Utiliza un enfoque moderno de visión por computadora, incluyendo aprendizaje automático (ML) para el reconocimiento preciso de personas, automóviles, animales y otros objetos, minimizando las falsas alarmas.

La característica principal de Frigate es su capacidad para trabajar con aceleración de hardware, lo que aumenta significativamente la eficiencia del procesamiento de video. Esto puede ser tanto un procesador normal (CPU) como aceleradores especializados, como Google Coral Edge TPU o NVIDIA GPU. Gracias a esto, Frigate es capaz de procesar múltiples flujos de video de alta resolución simultáneamente sin sobrecargar el sistema.

La elección de Frigate VPS para implementar este sistema de videovigilancia es una decisión estratégicamente ventajosa por varias razones. En primer lugar, obtiene un control total sobre su infraestructura, lo cual es fundamental para la seguridad y privacidad de la videovigilancia. En segundo lugar, los servidores VPS de Valebyte.com proporcionan un entorno estable y escalable que permite ajustar los recursos de forma flexible a las crecientes necesidades del sistema Frigate. No está limitado por la potencia del hardware doméstico y puede aumentar fácilmente el número de núcleos de CPU, la cantidad de RAM o el espacio en disco según sea necesario. Además, el alojamiento en un VPS garantiza un acceso constante a su sistema desde cualquier parte del mundo a través de Internet, sin necesidad de abrir puertos en su red doméstica.

Ventajas de la solución `Frigate self-hosted`

La implementación de Frigate self-hosted en su propio servidor (ya sea un mini-PC local o un VPS en la nube) ofrece una serie de ventajas innegables sobre los servicios comerciales en la nube:

  • Privacidad de los datos: Todos los flujos de video y grabaciones se almacenan y procesan exclusivamente en su servidor. No se envían datos a terceros, lo que elimina el riesgo de fugas y acceso no autorizado a su información personal.
  • Sin cuotas de suscripción: Después de comprar el VPS y configurar Frigate, solo paga por el servidor. No hay pagos ocultos por almacenamiento en la nube o funciones adicionales, como suele ocurrir con los sistemas propietarios.
  • Control total y personalización: Puede configurar Frigate según sus necesidades únicas, integrarlo con otros sistemas de hogar inteligente (por ejemplo, Home Assistant), usar cualquier número de cámaras y administrar de forma flexible las reglas de detección.
  • Alto rendimiento: Gracias al procesamiento local y la posibilidad de utilizar aceleración de hardware, Frigate garantiza una latencia mínima en la detección de eventos y un acceso instantáneo al archivo de video.
  • Fiabilidad: El funcionamiento del sistema no depende de la estabilidad de la conexión a Internet con servidores externos en la nube. Con un canal de Internet de respaldo en el VPS o una fuente de alimentación autónoma, su sistema de vigilancia funcionará incluso si hay problemas con el proveedor.

Requisitos del sistema para una `instalación de Frigate` eficiente en un VPS

Para una instalación de Frigate exitosa y su funcionamiento estable en un VPS, es crucial seleccionar correctamente la configuración del servidor. Frigate es una aplicación que consume bastantes recursos, especialmente al procesar múltiples flujos de video de alta resolución. Los componentes principales que determinan el rendimiento son el procesador (CPU), la memoria RAM, el espacio en disco y, idealmente, un acelerador de hardware.

¿Busca un servidor fiable para sus proyectos?

VPS desde $10/mes y servidores dedicados desde $9/mes con NVMe, protección DDoS y soporte 24/7.

Ver ofertas →

Selección de hardware: CPU, RAM, NVMe y aceleración GPU

  • Procesador (CPU): Frigate utiliza activamente la CPU para decodificar flujos de video y realizar algunas tareas de detección si no hay un acelerador de hardware.
    • Para 1-2 cámaras 1080p (sin TPU/GPU): Mínimo 2 vCPU con una frecuencia de reloj de 2.5 GHz o superior.
    • Para 3-5 cámaras 1080p (sin TPU/GPU): Se recomiendan 4 vCPU de 3.0 GHz o superior.
    • Al usar Coral Edge TPU o NVIDIA GPU: La carga principal de detección se traslada al acelerador, por lo que los requisitos de CPU disminuyen. Sin embargo, la CPU sigue siendo necesaria para la decodificación de video. En este caso, 2 vCPU de 2.5 GHz serán suficientes incluso para 5-8 cámaras.
    • Importante: Frigate se beneficia de los núcleos de alta frecuencia, no solo de su cantidad.
  • Memoria RAM: La cantidad de RAM depende del número de cámaras, su resolución y la duración del almacenamiento de los fotogramas en búfer.
    • Mínimo: 4 GB de RAM. Esto será suficiente para 1-2 cámaras con un búfer pequeño.
    • Recomendado: 8 GB de RAM. Óptimo para 3-5 cámaras, garantiza estabilidad y margen para otros servicios.
    • Para más de 5 cámaras o búfer largo: 16 GB de RAM.
  • Espacio en disco (NVMe): Frigate graba constantemente flujos de video (fotogramas en búfer, grabaciones de eventos) en el disco. La velocidad del disco es fundamental para evitar retrasos y pérdida de fotogramas.
    • Tipo de disco: Se recomienda encarecidamente NVMe SSD. Su alta velocidad de lectura/escritura supera significativamente a los SATA SSD y HDD, lo que afecta directamente el rendimiento de Frigate.
    • Volumen: Depende del número de cámaras, la resolución y la profundidad del archivo.
      • Para 1-2 cámaras (varios días de archivo): 50-100 GB NVMe.
      • Para 3-5 cámaras (una semana de archivo): 100-200 GB NVMe.
      • Para más de 5 cámaras o archivo largo: 200+ GB NVMe. Recuerde que 1 cámara 1080p puede generar 10-20 GB de video al día con grabación continua o almacenamiento en búfer.
  • Aceleración GPU (Google Coral Edge TPU / NVIDIA GPU): Este es el componente más importante para escalar Frigate. Sin él, la CPU realizará todo el trabajo de detección, lo que limita en gran medida el número de flujos procesados.
    • Google Coral Edge TPU: Ideal para Frigate. Un Coral USB (o PCIe) puede procesar 200-400+ FPS (fotogramas por segundo) para detección, lo que es suficiente para 10-20+ cámaras 1080p (asumiendo que cada cámara envía 5-10 FPS para detección). Desafortunadamente, los Coral TPU rara vez están disponibles en entornos VPS en la nube.
    • NVIDIA GPU: Algunos proveedores ofrecen VPS con NVIDIA GPU (por ejemplo, Tesla T4, V100). Esta es una excelente alternativa al Coral TPU, capaz de procesar aún más FPS. El soporte para NVIDIA GPU en Frigate se implementa a través de Docker con paso de GPU.
    • Atención: Si el VPS no ofrece un acelerador de hardware, Frigate utilizará la CPU para la detección. Esto aumentará sustancialmente los requisitos de CPU y limitará el número de cámaras.

`Instalación de Frigate Docker` paso a paso en su servidor

La forma más cómoda y recomendada de instalar Frigate Docker en un VPS es utilizando Docker y Docker Compose. Este enfoque garantiza el aislamiento de la aplicación, simplifica la gestión de dependencias y facilita las actualizaciones.

Preparación del entorno e instalación de Docker Compose

Antes de proceder con la implementación de Frigate, es necesario preparar su VPS:

  1. Actualice el sistema: Siempre comience actualizando el gestor de paquetes y los paquetes instalados.
  2. sudo apt update && sudo apt upgrade -y
  3. Instale Docker: Siga las instrucciones oficiales para su sistema operativo. Para Ubuntu/Debian, esto suele ser así:
  4. sudo apt install ca-certificates curl gnupg lsb-release -y
    sudo mkdir -p /etc/apt/keyrings
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt update
    sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y

    Añada su usuario al grupo docker para ejecutar comandos Docker sin sudo (requerirá reiniciar la sesión SSH o el sistema):

    sudo usermod -aG docker $USER
  5. Instale Docker Compose (si no está instalado como plugin): En las nuevas versiones de Docker, Compose suele venir como el plugin docker-compose-plugin, que se instala junto con Docker. Si utiliza una versión antigua o prefiere un binario separado, instálelo así:
  6. sudo apt install docker-compose -y
  7. Cree un directorio para Frigate:
  8. mkdir -p ~/frigate
    cd ~/frigate

Despliegue de Frigate: creación de la configuración y lanzamiento de contenedores

Ahora crearemos el archivo docker-compose.yml y un archivo de configuración base de Frigate.

  1. Cree el archivo docker-compose.yml:
  2. nano docker-compose.yml

    Pegue el siguiente contenido. Este ejemplo incluye Frigate, Mosquitto (para MQTT, utilizado por Frigate para eventos y Home Assistant) y Double-Take (opcional, para detección avanzada de caras/personas).

    version: "3.9"
    services:
      frigate:
        container_name: frigate
        image: ghcr.io/blakeblackshear/frigate:stable
        privileged: true # Puede ser necesario para acceder a aceleradores de hardware
        restart: unless-stopped
        shm_size: "256mb" # Aumente si ve problemas con el búfer de FFmpeg
        ports:
          - "5000:5000" # Interfaz web de Frigate
          - "1935:1935" # RTMP para visualización
        volumes:
          - /etc/localtime:/etc/localtime:ro
          - ~/frigate/config:/config # Directorio para la configuración de Frigate
          - ~/frigate/media:/media # Directorio para grabaciones y capturas
          - type: tmpfs # Use tmpfs para la caché de Frigate si hay problemas de escritura en disco
            target: /tmp/cache
            tmpfs:
              size: 1000000000 # 1GB
        environment:
          - FRIGATE_RTSP_PASSWORD=YOUR_RTSP_PASSWORD # Reemplace con una contraseña segura
        # Si usa Coral TPU (raro en VPS):
        # devices:
        #   - /dev/bus/usb:/dev/bus/usb
        # Si usa NVIDIA GPU (asegúrese de que nvidia-container-toolkit esté instalado):
        # runtime: nvidia
        # environment:
        #   - NVIDIA_VISIBLE_DEVICES=all
        #   - NVIDIA_DRIVER_CAPABILITIES=all
    
      mosquitto:
        container_name: mosquitto
        image: eclipse-mosquitto:latest
        restart: unless-stopped
        ports:
          - "1883:1883" # Puerto MQTT
          - "9001:9001" # Puerto Websockets (para MQTT)
        volumes:
          - ~/frigate/mosquitto/config:/mosquitto/config
          - ~/frigate/mosquitto/data:/mosquitto/data
          - ~/frigate/mosquitto/log:/mosquitto/log
    
      # Ejemplo de servicio opcional para integración con Frigate
      # double-take:
      #   container_name: double-take
      #   image: blakeblackshear/double-take:latest
      #   restart: unless-stopped
      #   ports:
      #     - "3000:3000" # Interfaz web de Double-Take
      #   volumes:
      #     - ~/frigate/double-take/config:/config
      #     - ~/frigate/media/frigate:/frigate/media # Acceso a los medios de Frigate
      #   environment:
      #     - FRIGATE_MQTT_HOST=mosquitto
      #     - FRIGATE_MQTT_PORT=1883
      #     - FRIGATE_MQTT_USERNAME=YOUR_MQTT_USERNAME # Si Mosquitto requiere autenticación
      #     - FRIGATE_MQTT_PASSWORD=YOUR_MQTT_PASSWORD # Si Mosquitto requiere autenticación
      #     - TZ=Europe/Moscow # Su zona horaria
      #   depends_on:
      #     - frigate
      #     - mosquitto
    

    Guarde y cierre el archivo (Ctrl+O, Enter, Ctrl+X).

    Nota sobre aceleradores de hardware: Si su VPS es compatible con NVIDIA GPU, deberá instalar nvidia-container-toolkit en el sistema anfitrión del VPS y descomentar las líneas correspondientes en docker-compose.yml. Para los VPS en la nube, Coral TPU es extremadamente raro.

  3. Cree el archivo de configuración base de Frigate (config.yml):
  4. mkdir ~/frigate/config
    nano ~/frigate/config/config.yml

    Pegue el siguiente ejemplo mínimo. Reemplace rtsp://user:pass@ip:port/stream con las URL reales de sus cámaras. Para cada cámara, suele haber un flujo principal (alta resolución para grabación) y un subflujo (baja resolución para detección, para reducir la carga).

    mqtt:
      host: mosquitto # Nombre del servicio Mosquitto en docker-compose
      topic_prefix: frigate # Prefijo para todos los mensajes MQTT de Frigate
      user: YOUR_MQTT_USERNAME # Opcional, si Mosquitto requiere autenticación
      password: YOUR_MQTT_PASSWORD # Opcional
    
    ffmpeg:
      hwaccel_args: # Aceleración de hardware para decodificación de video (para CPU)
        - -hwaccel
        - vaapi # O qsv, nvdec, v4l2m2m dependiendo de su CPU/GPU
        - -hwaccel_device
        - /dev/dri/renderD128 # O /dev/dri/renderD129, /dev/video0, etc.
      output_args:
        detect: -f rawvideo -pix_fmt yuv420p # Argumentos para el flujo de detección
        record: -f segment -segment_times 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy # Argumentos para la grabación
    
    detectors:
      cpu1: # Nombre del detector
        type: cpu
    
    # Si usa Coral TPU (raro en VPS):
    # detectors:
    #   coral:
    #     type: edgetpu
    #     device: usb # O pci
    
    cameras:
      front_door: # Nombre de su cámara
        ffmpeg:
          inputs:
            - path: rtsp://user:[email protected]:554/stream1 # Flujo principal (alta resolución para grabación)
              roles:
                - record
                - rtmp
            - path: rtsp://user:[email protected]:554/stream2 # Subflujo (baja resolución para detección)
              roles:
                - detect
        detect:
          enabled: True
          detector: cpu1 # Qué detector usar
          width: 640 # Ancho del flujo de detección
          height: 480 # Alto del flujo de detección
          fps: 5 # Fotogramas por segundo para detección
        record:
          enabled: True
          retain:
            days: 7 # Almacenar grabaciones durante 7 días
          events:
            pre_capture: 5 # Grabar 5 segundos antes del evento
            post_capture: 5 # Grabar 5 segundos después del evento
        rtmp:
          enabled: True # Habilitar flujo RTMP para visualización
        zones: # Zonas de detección opcionales
          porch:
            coordinates: 200,100,400,100,400,300,200,300
            objects:
              - person
        objects:
          track:
            - person
            - car
            - dog
          mask: # Máscara opcional para excluir áreas de la detección
            - 0,0,100,0,100,100,0,100 # Ejemplo de máscara
        snapshots:
          enabled: True
          timestamp: True
          bounding_box: True
          crop: True
          required_zones: []
          retain:
            default: 1
            objects:
              person: 7
        motion:
          mask: # Máscara para excluir áreas de la detección de movimiento
            - 0,0,100,0,100,100,0,100 # Ejemplo de máscara
    

    Guarde y cierre config.yml.

  5. Inicie los contenedores Docker Compose:
  6. docker compose up -d

    El comando -d inicia los contenedores en segundo plano. Para ver los logs, use docker compose logs -f.

    Después de iniciar, Frigate estará disponible en http://SU_IP_VPS:5000. Asegúrese de que el puerto 5000 esté abierto en el firewall de su VPS.

    rocket_launch Elección rápida

    ¿Buscas un servidor que simplemente funcione?

    Valebyte VPS — NVMe, soporte 24/7, despliegue en 60 segundos.

    Ver planes VPS arrow_forward

    Configuración detallada de Frigate: de cámaras a notificaciones

    El archivo config.yml es el corazón de su sistema Frigate. Su configuración correcta es fundamental para un funcionamiento estable, una detección precisa y un uso eficiente de los recursos del VPS.

    Fundamentos del archivo `config.yml` y su optimización

    Ya hemos cubierto la estructura básica, pero profundicemos en los parámetros importantes:

    • mqtt: Configuración del broker MQTT. Frigate utiliza MQTT para publicar todos los eventos (detección, instantáneas, estado de las cámaras), lo que lo hace ideal para la integración con otros sistemas de hogar inteligente, como Home Assistant. Asegúrese de que host apunte a su servicio Mosquitto (en nuestro ejemplo es mosquitto).
    • ffmpeg: Aquí se configura FFmpeg, que Frigate utiliza para decodificar flujos de video.
      • hwaccel_args: Si su VPS proporciona aceleración de hardware para la decodificación (por ejemplo, Intel Quick Sync Video - qsv, VA-API - vaapi, NVIDIA NVDEC - nvdec), ¡úsela obligatoriamente! Esto reducirá significativamente la carga de la CPU. Consulte la documentación de su proveedor de la nube o el tipo de procesador de su VPS para determinar el acelerador compatible. Por ejemplo, para la mayoría de los procesadores Intel en VPS, será vaapi.
      • output_args: Definen cómo FFmpeg procesa los flujos para detección y grabación. Es importante que el flujo para detección sea de baja resolución (subflujo de la cámara) para minimizar la carga.
    • detectors: Define los detectores utilizados. Si no tiene Coral TPU o NVIDIA GPU en el VPS, use type: cpu. Si tiene un acelerador de hardware, configúrelo aquí.
    • cameras: La sección más extensa, donde se configura cada cámara.
      • ffmpeg.inputs: Aquí se especifican las URL de los flujos RTSP de su cámara. Se recomienda encarecidamente utilizar dos flujos: uno principal (record, rtmp) con alta resolución para grabación y visualización, y un subflujo (detect) con baja resolución (por ejemplo, 640x480) para detección. Esto reduce significativamente la carga del detector.
      • detect: Habilitar/deshabilitar la detección, especificar el detector, la resolución y los FPS para la detección.
      • record: Configuración de la grabación de video. retain.days define cuántos días se conservarán las grabaciones. events.pre_capture y post_capture permiten grabar video antes y después de un evento detectado.
      • rtmp: Habilitar el flujo RTMP para visualización a través de Frigate.
      • zones y objects.mask: Estos parámetros permiten definir áreas específicas en el video donde la detección debe o no debe realizarse. Esto es muy útil para excluir falsas alarmas (por ejemplo, de árboles en movimiento o de la carretera).
      • snapshots: Configuración para guardar instantáneas al detectar objetos.

    Integración con sistemas externos: Home Assistant y MQTT

    Una de las ventajas clave de Frigate es su profunda integración con Home Assistant a través de MQTT. Una vez que Frigate y Mosquitto estén funcionando en su VPS, y Home Assistant esté instalado (posiblemente en otro VPS, consulte el artículo Home Assistant en VPS: instalación, configuración y mantenimiento), puede configurar su interacción:

    1. Configuración de MQTT en Home Assistant: En Home Assistant, añada la integración "MQTT" e indique la dirección IP de su VPS de Frigate (o el nombre de dominio, si usa un proxy inverso) y el puerto 1883.
    2. Detección automática: Frigate publica automáticamente sus dispositivos y sensores en Home Assistant a través de MQTT Discovery. Después de configurar MQTT en HA, verá nuevas entidades para cada cámara (estado, detección de movimiento, instantáneas, flujos de video).
    3. Automatizaciones: Utilice los eventos de Frigate (por ejemplo, "persona detectada en front_door") para activar automatizaciones en Home Assistant: encender luces, enviar notificaciones con imágenes, grabar video, etc.

    Ejemplo de YAML para Home Assistant (configuration.yaml) para mostrar el flujo de Frigate (asegúrese de que la interfaz web de Frigate sea accesible):

    # Ejemplo para Home Assistant
    camera:
      - platform: frigate
        host: SU_IP_VPS_FRIGATE # O nombre de dominio
        port: 5000 # Puerto de Frigate
        rtmp_port: 1935 # Puerto RTMP de Frigate
        # ssl: true # Si Frigate es accesible por HTTPS
        # verify_ssl: true
        # client_id: home-assistant
        # topic_prefix: frigate # Debe coincidir con frigate/config.yml
    
    # Si desea usar MQTT directamente (sin discovery)
    # camera:
    #   - platform: mqtt
    #     name: "Front Door Frigate"
    #     topic: "frigate/front_door/snapshot" # Tópico para instantáneas
    #     encoding: "b64"
    #     qos: 0
    #     unique_id: frigate_front_door_snapshot
    

    Frigate también puede enviar notificaciones directamente a través de varias integraciones (Telegram, Discord, Gotify) utilizando scripts o servicios adicionales, como Netdata en VPS: instalación, configuración y mantenimiento.

    Acceso seguro: Reverse Proxy (Nginx/Caddy) y HTTPS para `Frigate en el servidor`

    Acceder a la interfaz web de Frigate directamente por la dirección IP y el puerto 5000 es inseguro e inconveniente. Para garantizar un acceso protegido a Frigate en el servidor, especialmente si desea utilizar un nombre de dominio y HTTPS, es necesario configurar un proxy inverso (Reverse Proxy) utilizando Nginx o Caddy.

    Configuración de Nginx como proxy inverso

    Nginx es un servidor web potente y ampliamente utilizado que es excelente para el papel de proxy inverso. Permite redirigir las solicitudes desde su nombre de dominio al puerto interno de Frigate, y también integrar fácilmente Let's Encrypt para HTTPS.

    1. Instale Nginx:
    2. sudo apt update
      sudo apt install nginx -y
    3. Obtenga un certificado SSL de Let's Encrypt: Se recomienda usar Certbot.
    4. sudo apt install certbot python3-certbot-nginx -y
      sudo certbot --nginx -d su_dominio.com -d www.su_dominio.com

      Siga las instrucciones de Certbot. Configurará Nginx automáticamente para HTTPS.

    5. Cree o edite el archivo de configuración de Nginx para Frigate:
    6. sudo nano /etc/nginx/sites-available/frigate.conf

      Pegue el siguiente contenido, reemplazando su_dominio.com por su dominio real:

      server {
          listen 80;
          listen [::]:80;
          server_name su_dominio.com www.su_dominio.com;
          return 301 https://$host$request_uri;
      }
      
      server {
          listen 443 ssl http2;
          listen [::]:443 ssl http2;
          server_name su_dominio.com www.su_dominio.com;
      
          ssl_certificate /etc/letsencrypt/live/su_dominio.com/fullchain.pem; # Ruta a su certificado
          ssl_certificate_key /etc/letsencrypt/live/su_dominio.com/privkey.pem; # Ruta a su clave privada
          ssl_trusted_certificate /etc/letsencrypt/live/su_dominio.com/chain.pem;
      
          include /etc/letsencrypt/options-ssl-nginx.conf;
          ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # Creado por Certbot
      
          client_max_body_size 0; # Para subir archivos grandes, si es necesario
      
          location / {
              proxy_pass http://127.0.0.1:5000; # Frigate escucha en el puerto 5000
              proxy_set_header Host $host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
              proxy_read_timeout 900s; # Aumentar el tiempo de espera para conexiones largas (flujos de video)
              proxy_send_timeout 900s;
              proxy_connect_timeout 900s;
              proxy_buffering off; # Deshabilitar el almacenamiento en búfer para video en streaming
          }
      
          location /ws { # Para conexiones WebSocket de Frigate
              proxy_pass http://127.0.0.1:5000;
              proxy_http_version 1.1;
              proxy_set_header Upgrade $http_upgrade;
              proxy_set_header Connection "upgrade";
              proxy_set_header Host $host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
          }
      
          location /api/ws { # Si Frigate usa /api/ws para WebSocket
              proxy_pass http://127.0.0.1:5000;
              proxy_http_version 1.1;
              proxy_set_header Upgrade $http_upgrade;
              proxy_set_header Connection "upgrade";
              proxy_set_header Host $host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
          }
      
          # Para flujos RTMP (si desea proxyarlos a través de Nginx)
          # Esto requerirá el módulo Nginx RTMP, lo que complica la instalación.
          # Es más sencillo usar el acceso directo al puerto RTMP 1935 o la interfaz web de Frigate.
      }
    7. Active la configuración y recargue Nginx:
    8. sudo ln -s /etc/nginx/sites-available/frigate.conf /etc/nginx/sites-enabled/
      sudo nginx -t # Comprobar la sintaxis
      sudo systemctl reload nginx

    Ahora Frigate estará disponible en https://su_dominio.com.

    Uso de Caddy para una configuración simplificada

    Caddy es un servidor web moderno con soporte HTTPS automático (a través de Let's Encrypt) de fábrica. Es significativamente más fácil de configurar que Nginx para muchos escenarios.

    1. Instale Caddy: Siga las instrucciones oficiales para su SO. Para Debian/Ubuntu:
    2. sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
      curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
      curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
      sudo apt update
      sudo apt install caddy -y
    3. Cree o edite el archivo Caddyfile:
    4. sudo nano /etc/caddy/Caddyfile

      Pegue el siguiente contenido, reemplazando su_dominio.com por su dominio real:

      su_dominio.com {
          reverse_proxy 127.0.0.1:5000 {
              header_up Host {host}
              header_up X-Real-IP {remote_ip}
              header_up X-Forwarded-For {remote_ip}
              header_up X-Forwarded-Proto {scheme}
              # Aumentar los tiempos de espera para video en streaming
              transport http {
                  read_timeout 15m
                  write_timeout 15m
                  idle_timeout 15m
              }
              # Deshabilitar el almacenamiento en búfer para WebSocket
              websocket
          }
      }
    5. Reinicie Caddy:
    6. sudo systemctl reload caddy

    Caddy obtendrá y renovará automáticamente los certificados SSL. Frigate estará disponible en https://su_dominio.com.

    Mantenimiento de `Frigate VPS`: copias de seguridad, actualizaciones y monitoreo

    El mantenimiento regular de Frigate VPS es clave para su estabilidad y seguridad a largo plazo. Esto incluye la copia de seguridad de datos, las actualizaciones oportunas y el monitoreo del rendimiento.

    Estrategias de copia de seguridad de datos de Frigate

    Sus grabaciones de video, instantáneas y, lo que es más importante, la configuración de Frigate son datos valiosos que deben respaldarse regularmente. Utilice la siguiente estrategia:

    1. Copia de seguridad de la configuración: El archivo ~/frigate/config/config.yml y todos los archivos relacionados (por ejemplo, motion_masks.json) deben ser respaldados. Esto se puede hacer manualmente o automatizarse.
    2. Copia de seguridad de la base de datos: Frigate utiliza una base de datos SQLite (frigate.db) para almacenar metadatos sobre eventos y grabaciones. Se encuentra en el directorio ~/frigate/media. Se recomienda respaldarla junto con la configuración.
    3. Copia de seguridad de archivos multimedia: El directorio ~/frigate/media contiene todas sus grabaciones de video e instantáneas. Esto puede ser un volumen de datos muy grande, por lo que las copias de seguridad diarias completas pueden no ser prácticas.
      • Estrategia: Respalde solo los eventos importantes (por ejemplo, instantáneas de objetos) y la configuración diariamente. Una copia de seguridad completa del archivo de video se puede hacer con menos frecuencia o utilizando copias de seguridad incrementales.
      • Herramientas: Utilice herramientas como Restic en VPS para copias de seguridad eficientes, deduplicadas y cifradas en almacenamiento remoto (S3, Backblaze B2).

    Ejemplo de script para la copia de seguridad de la configuración y la base de datos (se puede añadir a cron):

    #!/bin/bash
    BACKUP_DIR="/root/frigate_backups"
    FRIGATE_CONFIG_PATH="/root/frigate/config"
    FRIGATE_MEDIA_PATH="/root/frigate/media" # Para la base de datos frigate.db
    
    mkdir -p $BACKUP_DIR
    TIMESTAMP=$(date +"%Y%m%d_%H%M%S")
    BACKUP_FILE="$BACKUP_DIR/frigate_config_db_$TIMESTAMP.tar.gz"
    
    # Detener Frigate durante la copia de seguridad de la base de datos para evitar daños
    # docker compose stop frigate
    
    # Crear archivo de configuración y base de datos
    tar -czf $BACKUP_FILE -C $FRIGATE_CONFIG_PATH . -C $FRIGATE_MEDIA_PATH frigate.db
    
    # docker compose start frigate
    
    # Eliminar copias de seguridad antiguas (por ejemplo, más de 7 días)
    find $BACKUP_DIR -name "frigate_config_db_*.tar.gz" -type f -mtime +7 -delete
    
    echo "Copia de seguridad de la configuración y la base de datos de Frigate creada: $BACKUP_FILE"

    Procedimiento de actualización de contenedores Docker de Frigate

    Mantener Frigate actualizado es importante para obtener nuevas funciones, correcciones de errores y actualizaciones de seguridad. Gracias a Docker Compose, el proceso de actualización es muy sencillo:

    1. Vaya al directorio de Frigate:
    2. cd ~/frigate
    3. Detenga los contenedores actuales:
    4. docker compose down
    5. Descargue las nuevas imágenes:
    6. docker compose pull
    7. Inicie los contenedores actualizados:
    8. docker compose up -d

    Siempre se recomienda revisar las notas de lanzamiento oficiales de Frigate antes de actualizar, ya que a veces pueden ser necesarios cambios en config.yml.

    rocket_launch Elección rápida

    ¿Buscas un servidor que simplemente funcione?

    Valebyte VPS — NVMe, soporte 24/7, despliegue en 60 segundos.

    Ver planes VPS arrow_forward

    ¿Qué `configuración de VPS` para carga real: recomendaciones de Valebyte.com

    Elegir la configuración de VPS correcta para Frigate es un equilibrio entre costo y rendimiento. En Valebyte.com ofrecemos tarifas flexibles que se pueden adaptar a sus necesidades. A continuación, se presenta una tabla con recomendaciones basadas en el número de cámaras y la disponibilidad de aceleración de hardware.

    Tabla: Configuraciones óptimas de VPS para diferentes escenarios de Frigate

    En esta tabla, asumimos el uso de un disco NVMe y una conexión a Internet estable en el VPS.

    Escenario de uso Cantidad de cámaras (1080p) vCPU (GHz) RAM (GB) Disco NVMe (GB) Aceleración de hardware Costo estimado de VPS (USD/mes)
    Monitoreo básico de hogar/oficina 1-2 2 @ 2.5+ 4 100 CPU (FFmpeg hwaccel) $5 - $10
    Monitoreo avanzado 3-5 4 @ 3.0+ 8 200 CPU (FFmpeg hwaccel) $10 - $20
    Monitoreo profesional (CPU-intensive) 6-8 6-8 @ 3.0+ 16 300+ CPU (FFmpeg hwaccel) $20 - $40
    Alto rendimiento (con aceleración GPU) 5-10+ 4 @ 2.5+ 8-16 200+ NVIDIA GPU (Tesla T4) Desde $50 (depende de la GPU)
    Almacenamiento de archivo (adicional) Cualquiera +0 +0 500+ (HDD/SSD) N/A +$5 - +$15 (depende del volumen)

    Recomendaciones de Valebyte.com:

    1. Empiece con poco: Si es nuevo, comience con un plan de 2 vCPU, 4 GB de RAM y 100 GB de NVMe. Esto es suficiente para probar y para 1-2 cámaras.
    2. Prioridad NVMe: Siempre elija planes con discos NVMe. Este es uno de los requisitos más críticos para Frigate.
    3. Procesador de alta frecuencia: Para la detección por CPU, Frigate responde mejor a los núcleos de alta frecuencia, incluso si son menos, que a un gran número de núcleos de baja frecuencia.
    4. Aceleración de hardware: Si su proveedor ofrece VPS con procesadores Intel, es probable que VA-API o QSV estén disponibles para la decodificación de hardware de FFmpeg. Asegúrese de usarlo. Si hay NVIDIA GPU disponibles, es la opción ideal para escalar la detección.
    5. Escalabilidad: Elija un proveedor que le permita escalar fácilmente los recursos del VPS (CPU, RAM, Disco) sin reinstalar el sistema. Valebyte.com ofrece esta flexibilidad.
    6. Monitoreo: Instale herramientas de monitoreo, como Netdata, para rastrear el uso de CPU, RAM y disco, identificar cuellos de botella y reaccionar a tiempo.

    Recuerde que los requisitos pueden variar según los modelos específicos de cámaras, la tasa de bits de los flujos de video y la complejidad de la escena. Siempre pruebe y optimice la configuración según sus necesidades.

    Conclusiones

    La instalación de Frigate en un VPS de Valebyte.com proporciona una plataforma fiable, privada y de alto rendimiento para la videovigilancia con detección de objetos. Elija planes con discos NVMe y suficientes núcleos de CPU de alta frecuencia, y si es posible, con aceleración de hardware GPU, para garantizar la máxima eficiencia y escalabilidad de su sistema.

    ¿Listo para elegir un servidor?

    VPS y servidores dedicados en más de 72 países con activación instantánea y acceso root completo.

    Empezar ahora →

Compartir esta publicación:

support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.