Frecuentemente publicamos actualizaciones de nuestra documentación. Es posible que la traducción de esta página esté en curso. Para conocer la información más actual, visita la documentación en inglés. Si existe un problema con las traducciones en esta página, por favor infórmanos.

Acerca de GitHub Packages

Paquetes de GitHub es un servicio de alojamiento de paquete de software que te permite alojar tus paquetes de software de forma privada o pública y usar paquetes como dependencias en tus proyectos.

Paquetes de GitHub is available with GitHub Free, GitHub Pro, GitHub Free for organizations, GitHub Team, GitHub Enterprise Cloud, Servidor de GitHub Enterprise 2.22, and GitHub One.

En este artículo

Note: Paquetes de GitHub is currently in beta for Servidor de GitHub Enterprise 2.22. To join the beta for your instance, use the sign-up form.

Acerca de Paquetes de GitHub

Paquetes de GitHub es un servicio de alojamiento de paquetes, totalmente integrado con GitHub. Paquetes de GitHub combina tu código fuente y tus paquetes en un solo lugar para proporcionar facturación y gestión de permisos integrada, para que puedas centralizar tu desarrollo de software en GitHub Enterprise.

Puedes integrar Paquetes de GitHub con las API de GitHub Enterprise, GitHub Actions y webhooks para crear un flujo de trabajo de DevOps de extremo a extremo que incluya tu código, CI y soluciones de implementación.

Puedes alojar múltiples paquetes en un repositorio y ver más información acerca de cada paquete al ver el README del paquete, las estadísticas de descarga, el historial de la versión y mucho más.

Ver paquetes

You can review the package's README, some metadata like licensing, download statistics, version history, and more on GitHub Enterprise. Para obtener más información, consulta "Visualizar paquetes".

About package permissions and visibility

Package registries
Hosting locationsYou can host multiple packages in one repository.
PermissionsPuedes publicar paquetes en un repositorio público (paquetes públicos) para compartir con todo GitHub, o en un repositorio privado (paquetes privados) para compartirlos con colaboradores o con una organización. Puedes utilizar los roles y equipos de GitHub para limitar quién puede instalar o publicar cada paquete, ya que los paquetes heredan los permisos del repositorio. Cualquier persona con permisos de lectura para un repositorio puede instalar un paquete como una dependencia en un proyecto, y cualquier persona con permisos de escritura puede publicar una nueva versión del paquete.
VisibilityPuedes publicar paquetes en un repositorio público (paquetes públicos) para compartir con todo GitHub, o en un repositorio privado (paquetes privados) para compartirlos con colaboradores o con una organización.

Formatos y clientes admitidos

Paquetes de GitHub usa los comandos de herramientas del paquete nativo con los que ya estás familiarizado para publicar e instalar versiones del paquete.

Support for package registries

The package types supported on tu instancia de servidor de GitHub Enterprise may vary since your site administrator can enable or disable support for different package types. For more information, see "Managing GitHub Packages for your enterprise."

If tu instancia de servidor de GitHub Enterprise has subdomain isolation enabled, then package registries will use PACKAGE-TYPE.HOSTNAME/OWNER/REPOSITORY/IMAGE-NAME as the package host URL, replacing PACKAGE-TYPE with the Package namespace. For example, your Dockerfile will be hosted at docker.HOSTNAME/OWNER/REPOSITORY/IMAGE-NAME.

If tu instancia de servidor de GitHub Enterprise has subdomain isolation disabled, then package registries will use HOSTNAME/_registry/PACKAGE-TYPE/OWNER/REPOSITORY/IMAGE-NAME as the package host URL. For example, your Gemfile will be hosted at HOSTNAME/_registry/rubygems/OWNER/REPOSITORY/IMAGE-NAME, replacing HOSTNAME with the host name of your Servidor de GitHub Enterprise instance. |

With subdomain isolation enabled on tu instancia de servidor de GitHub Enterprise:

LenguajeDescripciónFormato del paqueteCliente del paquetePackage namespace
JavaScriptGestor de paquetes Nodepackage.jsonnpmnpm.HOSTNAME/OWNER/REPOSITORY/IMAGE-NAME
RubyGestor de paquetes RubyGemsGemfilegemarubygems.HOSTNAME/OWNER/REPOSITORY/IMAGE-NAME
JavaHerramienta de administración y comprensión Apache Mavenpom.xmlmvnmaven.HOSTNAME/OWNER/REPOSITORY/IMAGE-NAME
JavaHerramienta de automatización de construcción Gradle para Javabuild.gradle o build.gradle.ktsgradlemaven.HOSTNAME/OWNER/REPOSITORY/IMAGE-NAME
.NETAdministración del paquete NuGet para .NETnupkgdotnet CLInuget.HOSTNAME/OWNER/REPOSITORY/IMAGE-NAME
N/APlataforma de administración del contenedor DockerDockerfileDockerdocker.HOSTNAME/OWNER/REPOSITORY/IMAGE-NAME

With subdomain isolation disabled on tu instancia de servidor de GitHub Enterprise:

LenguajeDescripciónFormato del paqueteCliente del paquetePackage namespace
JavaScriptGestor de paquetes Nodepackage.jsonnpmHOSTNAME/_registry/npm/OWNER/REPOSITORY/IMAGE-NAME
RubyGestor de paquetes RubyGemsGemfilegemaHOSTNAME/_registry/rubygems/OWNER/REPOSITORY/IMAGE-NAME
JavaHerramienta de administración y comprensión Apache Mavenpom.xmlmvnHOSTNAME/_registry/maven/OWNER/REPOSITORY/IMAGE-NAME
JavaHerramienta de automatización de construcción Gradle para Javabuild.gradle o build.gradle.ktsgradleHOSTNAME/_registry/maven/OWNER/REPOSITORY/IMAGE-NAME
.NETAdministración del paquete NuGet para .NETnupkgdotnet CLIHOSTNAME/_registry/nuget/OWNER/REPOSITORY/IMAGE-NAME

Note: Docker is not supported when subdomain isolation is disabled.

For more information about subdomain isolation, see "Enabling subdomain isolation."

Para obtener más información acerca de la configuración de tu cliente de paquete para usar con Paquetes de GitHub, consulta Usar Paquetes de GitHub con el ecosistema de tu proyecto."

Autenticar a Paquetes de GitHub

Necesitas de un token de acceso para publicar, instalar, y borrar paquetes en Paquetes de GitHub. Puedes utilizar un token de acceso personal para autenticarte con tu nombre de usuario directamente en Paquetes de GitHub o en la API de GitHub. Cuando creas un token de acceso personal, puedes asignar al token diferentes ámbitos en función de tus necesidades.

To authenticate to Paquetes de GitHub using a GitHub Actions workflow, you must use GITHUB_TOKEN.

Administrar paquetes

Para instalar o publicar un paquete, debes usar un token con el ámbito adecuado, y tu cuenta de usuario debe tener los permisos pertinentes para ese repositorio.

Por ejemplo:

  • Para descargar e instalar paquetes desde un repositorio, tu token debe tener el ámbito read:packages, y tu cuenta de usuario debe tener permisos de lectura para el repositorio. Si el repositorio es privado, tu token también debe tener el ámbito repo.
  • Para eliminar una versión especificada de un paquete privado en GitHub Enterprise, tu token debe tener los ámbitos delete:packages y repo. Los paquetes públicos no se pueden eliminar. Para obtener más información, consulta "Eliminar un paquete".
ÁmbitoDescripciónPermisos de repositorio
read:packagesDescarga e instala paquetes de Paquetes de GitHublectura
write:packagesCarga y publica paquetes en Paquetes de GitHubescritura
delete:packagesElimina versiones especificadas de paquetes privados de Paquetes de GitHubadmin
repoInstala, carga y elimina determinados paquetes en repositorios privados (junto con read:packages, write:packages o delete:packages)lectura, escritura o admin

Cuando creas un flujo de trabajo de GitHub Actions, puedes usar el GITHUB_TOKEN para publicar e instalar paquetes en Paquetes de GitHub sin la necesidad de almacenar y administrar un token de acceso personal.

Para obtener más información, consulta:

  • Encuentras algo que contradice la documentación
  • "Crear un token de acceso personal"
  • Tu paquete publicado contiene datos confidenciales, como violaciones del RGPD, claves de API o información de identificación personal

Administrar paquetes

Puedes eliminar una versión de un paquete privado en GitHub Enterprise o usar la API de GraphQL. Cuando usas la API de GraphQL para consultar y eliminar paquetes privados, debes usar el mismo token que usas para autenticarte en Paquetes de GitHub. Para obtener más información, consulta las secciones "Borrar un paquete" y "Formar llamadas con GraphQL".

Puedes configurar webhooks para suscribirte a eventos relacionados con paquetes, como cuando se publica o se actualiza un paquete. Para obtener más información, consulta el "evento de webhook de package".

Contactar con soporte técnico

If you need support for Paquetes de GitHub, please contact your site administrators.

¿Te ayudó este documento?

Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

O, learn how to contribute.