Skip to main content

Conectar un repositorio a un paquete

Puedes conectar un repositorio a un paquete en GitHub.com.

¿Quién puede utilizar esta característica?

GitHub Packages está disponible con GitHub Free, GitHub Pro, GitHub Free para organizaciones, GitHub Team, GitHub Enterprise Cloud y GitHub Enterprise Server 3.0 o superior
GitHub Packages no está disponible para repositorios privados que pertenezcan a cuentas que utilicen planes tradicionales por repositorio. Además, las cuentas que usan planes heredados por repositorio no pueden acceder a los registros que admiten permisos granulares, ya que estas cuentas se facturan por repositorio. Para la lista de registros que admiten permisos granulares, consulta "Acerca de los permisos para los Paquetes de GitHub". Para más información, consulta "Planes de GitHub".

Al publicar un paquete cuyo ámbito es una cuenta personal o una organización, el paquete no está vinculado a un repositorio de forma predeterminada. Si conectas un paquete a un repositorio, la página de aterrizaje del paquete mostrará información y vínculos del repositorio, tales como el README. También puedes optar por que el paquete herede sus permisos de acceso del repositorio vinculado. Para obtener más información, vea «Configurar la visibilidad y el control de accesos de un paquete».

Conectar un repositorio a un paquete con ámbito de usuario en GitHub

  1. En GitHub, navega hasta la página principal de tu cuenta personal.

  2. En la esquina superior derecha de GitHub.com, haga clic en la foto de perfil y luego en Your profile (Su perfil).

    Captura de pantalla del menú desplegable en la imagen de perfil de @octocat. "Tu perfil" se destaca en naranja oscuro.

  3. En la página del perfil, en el encabezado, haz clic en la pestaña Paquetes.

  4. Busca y haz clic en el nombre del paquete que quieres administrar.

  5. En las versiones del paquete, haz clic en Conectar repositorio.

  6. Selecciona un repositorio para vincularlo al paquete y, a continuación, haz clic en Conectar repositorio.

Conectar un repositorio a un paquete con ámbito de organización en GitHub

  1. En GitHub, navega a la página principal de tu organización.

  2. En el nombre de la organización, haz clic en la pestaña Paquetes.

    Captura de pantalla de la página de perfil de @octo-org. La pestaña "Paquetes" está resaltada con un contorno naranja.

  3. Busca y haz clic en el nombre del paquete que quieres administrar.

  4. En las versiones del paquete, haz clic en Conectar repositorio.

  5. Selecciona un repositorio para vincularlo al paquete y, a continuación, haz clic en Conectar repositorio.

Conectar un repositorio a una imagen de contenedor que utilice la línea de comandos

Nota: Si publicas un paquete vinculado a un repositorio, el paquete hereda automáticamente los permisos de acceso del repositorio vinculado y los flujos de trabajo de GitHub Actions en el repositorio vinculado automáticamente obtienen acceso al paquete, a menos que la organización haya deshabilitado la herencia automática de los permisos de acceso. Para obtener más información, vea «Configurar la visibilidad y el control de accesos de un paquete».

  1. En el Dockerfile, agrega esta línea y reemplaza OWNER y REPO por tu información:

    LABEL org.opencontainers.image.source=https://github.com/OWNER/REPO
    

    Por ejemplo, si eres el usuario octocat y posees my-repo añadiría esta línea a tu Dockerfile:

    LABEL org.opencontainers.image.source=https://github.com/octocat/my-repo
    

    Para obtener más información, consulte "LABEL" en la documentación oficial de Docker y "Claves de anotación predefinidas" en el repositorio de opencontainers/image-spec.

  2. Crea tu imagen de contenedor. Este ejemplo crea una imagen del Dockerfile en el directorio actual y asigna el nombre de imagen hello_docker.

    docker build -t hello_docker .
    
  3. Opcionalmente, revise los detalles de la imagen de Docker que acaba de crear.

    $ docker images
    > REPOSITORY          TAG         IMAGE ID       CREATED         SIZE
    > hello_docker        latest      142e665b1faa   5 seconds ago   125MB
    > redis               latest      afb5e116cac0   3 months ago    111MB
    > alpine              latest      a6215f271958   5 months ago    5.29MB
    
  4. Asigne un nombre y un destino de hospedaje a la imagen de Docker.

    docker tag IMAGE_NAME ghcr.io/NAMESPACE/NEW_IMAGE_NAME:TAG
    

    Reemplaza NAMESPACE por el nombre de la cuenta personal u organización a la que deseas designar un ámbito de paquete.

    Por ejemplo:

    docker tag 38f737a91f39 ghcr.io/octocat/hello_docker:latest
    
  5. Si aún no lo haces, autentícate en el Container registry. Para obtener más información, vea «Trabajar con el registro de contenedores».

    $ echo $CR_PAT | docker login ghcr.io -u USERNAME --password-stdin
    > Login Succeeded
    
  6. Sube tu imagen de contenedor al Container registry.

    docker push ghcr.io/NAMESPACE/IMAGE-NAME:TAG
    

    Por ejemplo:

    docker push ghcr.io/octocat/hello_docker:latest