What is ghcr.io

Last updated: April 1, 2026

Quick Answer: GHCR.io (GitHub Container Registry) is GitHub's container image registry service that allows developers to store, publish, and manage Docker container images. It's free, integrated with GitHub repositories, and supports container authentication through GitHub credentials.

Key Facts

Overview of GHCR.io

GHCR.io, or GitHub Container Registry, is GitHub's container image hosting service that allows developers to build, store, and distribute containerized applications. Launched as a successor to GitHub's earlier Docker registry, GHCR.io provides a centralized location for managing container images alongside source code repositories. The service is integrated directly into GitHub's platform, making it convenient for developers already using GitHub for version control and CI/CD workflows. GHCR.io is free to use, with container images stored privately or publicly depending on user preferences and repository settings.

Authentication and Access Control

GHCR.io uses GitHub authentication, allowing developers to authenticate using their GitHub credentials, personal access tokens, or GitHub App tokens. This integration eliminates the need to manage separate credentials for container storage. Access control is granular—images can be linked to repositories with permissions inherited from GitHub's access control system. Organizations can manage who can push, pull, or delete images using standard GitHub team and user permissions. The tight integration with GitHub authentication makes GHCR.io particularly attractive for teams already invested in GitHub's ecosystem.

Container Format Support

GHCR.io supports multiple container formats beyond standard Docker images, including OCI (Open Container Initiative) images and Helm charts for Kubernetes deployments. This flexibility allows developers to store various types of containerized applications in a single registry. Docker CLI commands work seamlessly with GHCR.io, requiring minimal configuration changes from the standard Docker workflow. The registry supports standard container operations including pushing, pulling, and tagging images. Developers can also use platform-specific tools and CI/CD platforms that support GHCR.io as a registry endpoint.

Integration with GitHub Actions

GHCR.io integrates seamlessly with GitHub Actions, GitHub's built-in continuous integration and deployment platform. Developers can create workflows that automatically build container images from source code and push them directly to GHCR.io. This automation reduces manual steps and enables continuous deployment pipelines. Many open-source projects and organizations use GitHub Actions with GHCR.io to automatically build and publish container images whenever code is pushed to repositories. The integration also allows automatic image tagging based on Git tags and branches, simplifying version management.

Related Questions

How do you push a Docker image to GHCR.io?

To push a Docker image to GHCR.io, tag it with the format ghcr.io/username/image-name:tag, authenticate using your GitHub personal access token with docker login, and run docker push. The token must have appropriate permissions for accessing the container registry.

Is GHCR.io free to use?

Yes, GHCR.io is free to use for both public and private container images. GitHub charges for storage and data transfer if usage exceeds generous free tier limits, but basic use is completely free for most developers and organizations.

Can you use GHCR.io without a GitHub repository?

GHCR.io is tightly integrated with GitHub repositories, and while you technically can use it for unrelated images, it's designed primarily for storing containers alongside their source code on GitHub. Docker Hub remains a better option for images without associated repositories.

Sources

  1. GitHub Documentation - Container Registry CC-BY-4.0