Saltar al contenido

Descripción general ​

ProAnima Arkvory es un repositorio autoalojado para artefactos de compilación y archivos. Se instala en su propio servidor. Almacena los archivos que generan sus compilaciones y los entrega a las personas y los sistemas que los necesitan: agentes de despliegue, pipelines de CI/CD, equipos de prueba y desarrolladores.

Arkvory es gratuito para todos, también para las empresas. Su código fuente está abierto a la lectura, pero no es de código abierto. Puede usarlo y modificarlo dentro de su organización. No puede distribuir copias, venderlo ni ofrecerlo como servicio. Consulte la licencia.

A quién va dirigido ​

  • Ingenieros de CI/CD que necesitan un único lugar para publicar compilaciones, encontrar una compilación por versión o por etapa y descargarla en un trabajo de despliegue.
  • Administradores que quieren un servicio de almacenamiento que se ejecute en un solo servidor, se reinicie por sí solo, haga sus propias copias de seguridad y se actualice solo.
  • Estudios de videojuegos que trabajan con Unity o Unreal Engine. Arkvory almacena recursos binarios grandes mediante Git LFS, paquetes de Unity mediante un registro npm y resultados de compilación de decenas de gigabytes.
  • Equipos con varias sedes que quieren una copia de solo lectura de un repositorio cerca de las personas que descargan de él.

Qué almacena ​

Todo se guarda en repositorios. Un repositorio puede contener varios tipos de contenido a la vez:

ContenidoCómo se trabaja con él
Artefactos (cualquier archivo)Se suben con la consola, el cliente de línea de comandos, el SDK o la API HTTP
Paquetes UPackPaquetes con versiones, con un grupo, un nombre y una versión SemVer. Consulte Paquetes.
Archivos por rutaUna ruta como builds/game/1.4/Setup.exe que conserva todas las versiones anteriores. Consulte Archivos y rutas y Archivos raw.
Imágenes de contenedorUn registro OCI para Docker, Podman, Helm y ORAS. Consulte Imágenes de contenedor.
Objetos de Git LFSUn servidor Git LFS con bloqueo de archivos. Consulte Git LFS.
Paquetes npm y de UnityUn registro npm que Unity Package Manager puede usar. Consulte Unity y npm.

Cada archivo almacenado es un artefacto inmutable con una suma de comprobación SHA-256. El contenido nuevo nunca reemplaza los bytes anteriores; crea un artefacto nuevo. Consulte Conceptos.

Funciones principales ​

  • Archivos grandes. Las subidas se envían en partes y pueden continuar tras un fallo de red o un reinicio. Un objeto puede ocupar hasta unos 10 TiB. Las descargas admiten rangos HTTP, así que también pueden continuar.
  • Control de acceso. Cuentas de usuario, grupos, tokens de acceso personal y cuentas de servicio con claves. Cada clave recibe solo las acciones de repositorio que necesita.
  • Etapas y promoción. Marque una compilación como qa, release o prod, o publíquela en otro repositorio sin una nueva subida. Un agente de despliegue puede pedir «la compilación release más reciente del rango ^1.4».
  • Metadatos. Etiquetas, metadatos de texto, colecciones y archivos adjuntos, como manifiestos, SBOM y firmas.
  • Retención. Conserve las últimas N compilaciones de cada paquete, establezca cuotas y elimine el contenido antiguo en segundo plano.
  • Copias de seguridad. Un agente de copias de seguridad copia la base de datos y todo el contenido en un almacén de copias situado en otro disco o en un NAS, con una programación diaria que activa un administrador, y verifica las copias.
  • Espejos. Una segunda instalación puede mantener una copia de solo lectura de un repositorio y servirla cuando el servidor principal no está disponible.
  • Puertas de enlace de lectura. Procesos de descarga adicionales sobre el mismo almacenamiento compartido, que comparten un único presupuesto de descarga.
  • Autorrecuperación. Los servicios se reinician tras una caída o cuando dejan de responder. Las transferencias largas pueden continuar tras el reinicio.
  • Actualizaciones. El servidor comprueba en el hub las versiones estables firmadas que aprueba ProAnimaStudio. Las instala manualmente o de forma automática en una hora de mantenimiento, y puede volver a la versión anterior.
  • Consola web. Temas claro y oscuro, en once idiomas: inglés, ruso, español, francés, alemán, portugués, chino, japonés, coreano, hindi y árabe (de derecha a izquierda). Esta documentación está en los mismos idiomas. Consulte La consola web.

Cómo se ejecuta ​

Arkvory se ejecuta en un solo servidor. Usa PostgreSQL para el catálogo y un directorio local para el contenido. Tres servicios trabajan juntos:

ServicioFunción
APIEl servidor HTTP: la API, la consola y los registros. También ejecuta la retención y la limpieza física.
Proceso de trabajo (worker)Tareas en segundo plano: finalizar las subidas grandes y sincronizar los espejos
Agente de copias de seguridadCopias de seguridad programadas en el almacén de copias

Puede instalarlo de tres maneras:

PlataformaInstaladorDetalles
Windows 10/11, Windows ServerArkvory-Setup-x64.exeUn asistente de instalación. Incluye Node.js y PostgreSQL y funciona sin internet. Los servicios se ejecutan sin un usuario con sesión iniciada. Consulte Windows.
LinuxArkvory-amd64.deb, Arkvory-x86_64.rpmPaquetes para apt y dnf, con servicios de systemd. Consulte Linux.
DockerDocker ComposeLa API, el worker, el agente de copias de seguridad y PostgreSQL en contenedores. Consulte Docker.

De forma predeterminada, el servidor escucha solo en 127.0.0.1:8080. Antes de que se conecten otros equipos, configure HTTPS.

Una instalación es un servidor: si se detiene, los clientes esperan hasta que vuelva a estar disponible. En Linux, un clúster de alta disponibilidad de dos o tres servidores toma el relevo cuando uno falla. Use copias de seguridad y, si hace falta, espejos en un segundo sitio.

Dónde continuar ​

  1. Inicio rápido: instale Arkvory y suba su primer archivo.
  2. Conceptos: las palabras que usa el resto de la documentación.
  3. Instalación: requisitos y opciones de cada plataforma.
  4. Cliente de línea de comandos: use Arkvory desde scripts y CI.
  5. Copias de seguridad: proteja sus datos antes de pasar a producción.

Arkvory · ProAnimaStudio