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.


Paquetes de GitHub no está disponible para repositorios privados que pertenezcan a cuentas que utilicen planes tradicionales por repositorio. Paquetes de GitHub se encuentra disponible con GitHub Free, GitHub Pro, GitHub Free para organizaciones, GitHub Team, GitHub Enterprise Cloud, y GitHub One. Para obtener más información, consulta la sección "Productos de GitHub".

En este artículo

¿Te ayudó este documento?

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.

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.

Puedes integrar Paquetes de GitHub con las API de GitHub, 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.

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 "Acerca de GitHub Container Registry".

Note: GitHub Container Registry is currently in public beta and subject to change. Currently, GitHub Container Registry only supports Docker image formats. During the beta, storage and bandwidth is free. Para obtener más información, consulta "Acerca de GitHub Container Registry".

Ver paquetes

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

About package permissions and visibility

Package registriesGitHub Container Registry
Hosting locationsYou can host multiple packages in one repository.You can host multiple container images in one organization or user account.
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.For each container image, you can choose the access level that others have. The permissions for container image access are separate from your organization and repository permissions.
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.You can set the visibility of each of your container images. A private container image is only visible to people and teams who are given access within your organization. A public container image is visible to anyone.

For more information about permissions and visibility for GitHub Container Registry, see "Configuring access control and visibility for containers."

Acerca de la facturación para Paquetes de GitHub

El uso de Paquetes de GitHub es gratuito para los paquetes públicos. Para los paquetes privados, cada cuenta de GitHub recibe una cantidad determinada de almacenamiento gratuito y de transferencia de datos, dependiendo del producto que se utilice en la cuenta. Predeterminadamente, tu cuenta tendrá un límite de gastos de $0, lo cual previene el uso adicional de almacenamiento o transferencia de datos después de que alcanzas el límite de las cantidades incluidas. Si incrementas tu límite de gastos por encima del $0 predeterminado, se te cobrará por cualquier almacenamiento o transferencia de datos extra, también llamados excedentes, hasta el tope del límite de gastos que hayas configurado. No podrán aplicarse los cupones que tenga tu cuenta para los excedentes de Paquetes de GitHub. Para obtener más información, consulta "Acerca de la facturación para Paquetes de GitHub".

{% note %}

Billing update for container image storage: During the beta phase of {% data variables.product.prodname_github_container_registry %}, Docker image storage and bandwidth are free for the old docker.pkg.github.com and new ghcr.io hosting services. Para obtener más información, consulta "Acerca de {% data variables.product.prodname_github_container_registry %}".

{% endnote %}

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 GitHub Container Registry

The GitHub Container Registry hosts containers at ghcr.io/OWNER/IMAGE-NAME.

Cliente del paqueteLenguajeFormato del paqueteDescripción
dockerN/ADockerfileGestor de paquetes Node

For more information about the container support offered by GitHub Container Registry, see "About GitHub Container Registry."

Support for package registries

Package registries use PACKAGE-TYPE.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME as the package host URL, replacing PACKAGE-TYPE with the Package namespace. For example, your Gemfile will be hosted at rubygem.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME.

LenguajeDescripciónFormato del paqueteCliente del paquetePackage namespace
JavaScriptGestor de paquetes Nodepackage.jsonnpmnpm.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME
RubyGestor de paquetes RubyGemsGemfilegemarubygems.pkg.github.com/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.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`

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 using a GitHub Actions workflow:

  • For package registries (PACKAGE-REGISTRY.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME), you can use a GITHUB_TOKEN.
  • For the container registry (ghcr.io/OWNER/IMAGE-NAME), you must use a personal access token.

Sobre tokens

ÁmbitoDescripción
read:packagesDownload and install container images from GitHub Container Registry
write:packagesUpload and publish container images to GitHub Container Registry
delete:packagesDelete specified versions of private or public container images from GitHub Container Registry. For more information, see "Deleting a container image."

To learn about available scopes and permissions for container images, see "About GitHub Container Registry" or "Configuring access control and visibility for container images."

Para obtener más información, consulta las secciones "Crear un token de acceso personal" y "Alcances disponibles".

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, 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 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

Si tienes comentarios o solicitudes de características para Paquetes de GitHub, usa el formulario de comentarios de para Paquetes de GitHub.

Contacta el Soporte de GitHub sobre Paquetes de GitHub usando nuestro formulario de contacto si:

  • Encuentras algo que contradice la documentación
  • Encuentras errores vagos o poco claros
  • Tu paquete publicado contiene datos confidenciales, como violaciones del RGPD, claves de API o información de identificación personal

¿Te ayudó este documento?

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.