Ir al contenido

Docker

La imagen trae todo: CUDA 12.8 y cuDNN 9, el servidor (Python 3.12), el motor de voz OmniVoice en su propio entorno (Python 3.11 + torch), ffmpeg y Node.

  • GPU NVIDIA y su controlador al día.
  • Linux: Docker con NVIDIA Container Toolkit.
  • Windows: Docker Desktop con WSL 2 (la GPU pasa al contenedor sin instalar nada más).
  1. Clona el repositorio:

    Ventana de terminal
    git clone https://github.com/alenj0x1/translay.git
    cd translay
  2. Define la contraseña del dueño:

    Ventana de terminal
    cp .env.example .env

    y cambia TRANSLAY_OWNER_PASSWORD en .env.

  3. Construye y arranca:

    Ventana de terminal
    docker compose up -d --build
  4. Abre http://localhost:8765 e inicia sesión con esa contraseña.

La primera vez descarga los modelos (~6 GB) al volumen modelos; el contenedor aparece como healthy cuando el servidor responde. Para ver el avance:

Ventana de terminal
docker compose logs -f

Fuera de Docker, quien entra desde el mismo equipo (127.0.0.1) es el dueño sin iniciar sesión. Dentro del contenedor las conexiones llegan desde la red de Docker, así que nadie cuenta como local: sin contraseña nadie podría administrar la app. TRANSLAY_OWNER_PASSWORD (o --owner-password) la fija al arrancar. Más en Acceso.

Ruta en el contenedor Qué guarda
/app/data Tu biblioteca, transcripciones, voces, cola, preferencias y claves (en el compose, ./data).
/models Modelos de Hugging Face (HF_HOME). Conservarlo evita volver a descargarlos.

Puedes montar la misma carpeta data/ que usa la instalación local: el formato es el mismo.

Ventana de terminal
docker build -t translay .
docker run -d --gpus all -p 8765:8765 \
-e TRANSLAY_OWNER_PASSWORD=tu-contraseña \
-v "$PWD/data:/app/data" -v translay-modelos:/models \
--name translay translay

Las opciones de arranque van después del nombre de la imagen; reemplazan las de por defecto (--host 0.0.0.0 --no-browser), así que inclúyelas:

Ventana de terminal
docker run … translay --host 0.0.0.0 --no-browser --translator nllb-1.3b