---
title: "Autoalojamiento · Documentación · SourceAnt"
description: "Documentación: Implemente la API de revisión de SourceAnt en su propio servidor usando la imagen de Docker publicada."
url: "https://sourceant.ai/es/docs/self-hosting/"
---

# Autoalojamiento

Ejecute la API de revisión de SourceAnt en su propio servidor usando la imagen de Docker publicada. Esta implementación es solo de API. Usted proporciona la base de datos, las credenciales del modelo y la GitHub App.

Para explorar código y conocimiento, gestionar habilidades y revisar cambios en su máquina, siga [Configuración local](https://sourceant.ai/es/docs/local-setup).

## Prepare su servidor

Necesita Docker, una base de datos PostgreSQL accesible desde los contenedores y una dirección HTTPS para las entregas de GitHub. Mantenga la API y los workers en la misma versión de imagen y configuración de base de datos.

Cree un archivo `.env` con la conexión de su base de datos, la clave del modelo y del proveedor, las credenciales de la GitHub App, el secreto del webhook y el secreto JWT. Use la [plantilla de entorno](https://github.com/sourceant/sourceant/blob/main/.env.example) como referencia y reemplace sus valores de marcador de posición.

## Inicie la API

La imagen publicada es `ghcr.io/sourceant/sourceant`. Estos comandos usan `latest`; fije una etiqueta de imagen publicada para una implementación de producción repetible. Ejecútelos desde el directorio que contiene su archivo `.env` y la clave privada de la GitHub App.

```
docker pull ghcr.io/sourceant/sourceant:latest

docker run -d --name sourceant-api \
  --env-file .env \
  -e QUEUE_MODE=database \
  -e GITHUB_APP_PRIVATE_KEY_PATH=/app/private-key.pem \
  -v "$PWD/private-key.pem:/app/private-key.pem:ro" \
  -p 127.0.0.1:8000:8000 \
  ghcr.io/sourceant/sourceant:latest
```

La imagen aplica las migraciones de la base de datos antes de iniciar la API en el puerto 8000. Asegúrese de que el usuario del contenedor pueda leer la clave privada montada.

```
docker logs sourceant-api
curl http://127.0.0.1:8000/
```

Compruebe que la API responde antes de iniciar los workers. Coloque su proxy inverso HTTPS delante del puerto 8000. La referencia de la API está disponible en `/docs`.

## Inicie el worker de revisión

Con la cola SQL, ejecute un worker usando la misma base de datos y credenciales:

```
docker run -d --name sourceant-worker \
  --env-file .env \
  -e QUEUE_MODE=database \
  -e GITHUB_APP_PRIVATE_KEY_PATH=/app/private-key.pem \
  -v "$PWD/private-key.pem:/app/private-key.pem:ro" \
  --entrypoint sourceant \
  ghcr.io/sourceant/sourceant:latest work --lane interactive
```

Ejecute workers para los carriles `batch` y `background` según sea necesario para otro trabajo en cola. Consulte la [referencia de implementación](https://github.com/sourceant/sourceant/blob/main/docs/deployment.md) para la configuración y las opciones de los workers.

## Conecte su GitHub App

1.  Cree una GitHub App para este servidor.
2.  Establezca su URL de webhook en `https://your-domain.com/api/prs/github-webhook` y su secreto de webhook en el valor de `GITHUB_SECRET`.
3.  Conceda **Contenido: Solo lectura** y **Solicitudes de extracción: Lectura y escritura**, y suscríbase a los eventos de **Solicitud de extracción** .
4.  Establezca `GITHUB_APP_ID` y `GITHUB_APP_CLIENT_ID` en su archivo de entorno y monte la clave privada de la App en ambos contenedores.
5.  Instale la App en los repositorios que desea revisar.

Aplique la configuración de la App antes de iniciar los contenedores. Abra una solicitud de extracción para comprobar la entrega y el procesamiento, usando el historial de entregas de la App y los registros del worker. Consulte [Configuración de la GitHub App](https://github.com/sourceant/sourceant/blob/main/docs/github-app.md) para la configuración completa.
