# docker pass

**Descripción:** Gestiona los secretos de tu llavero del sistema operativo local.

**Uso:** `docker pass set|get|ls|rm`





> [!NOTE]

> **Experimental**
>
> Este comando es experimental. Las funciones experimentales están destinadas a pruebas y comentarios, ya que su funcionalidad o diseño pueden cambiar entre versiones sin previo aviso o eliminarse por completo en una versión futura.
> 




## Descripción

Docker Pass es un asistente para almacenar secretos de forma segura en el llavero (keychain) local de tu sistema operativo e inyectarlos en los contenedores cuando sea necesario. 
Utiliza almacenamiento de credenciales específico de la plataforma:

  - Windows: API de Windows Credential Manager
  - macOS:   API de servicios de llavero (Keychain)
  - Linux:   API org.freedesktop.secrets (requiere DBus + gnome-keyring o kdewallet)

Los secretos se pueden inyectar en contenedores en ejecución en tiempo de ejecución utilizando el esquema URI se://.




## Ejemplos

### Usar secretos del llavero en contenedores

Crea un secreto:

```console
$ docker pass set GH_TOKEN=123456789
```

Crea un secreto desde STDIN:

```console
echo "my_val" | docker pass set GH_TOKEN
```

Ejecuta un contenedor que use el secreto:

```console
$ docker run -e GH_TOKEN= -dt --name demo busybox
```

Inspecciona el secreto desde dentro del contenedor:

```console
$ docker exec demo sh -c 'echo $GH_TOKEN'
123456789
```

Asigna explícitamente un secreto a una variable de entorno diferente:

```console
$ docker run -e GITHUB_TOKEN=se://GH_TOKEN -dt --name demo busybox
```

### Usar secretos del llavero en Compose

Almacena los secretos:

```console
$ docker pass set myapp/anthropic/api-key=sk-ant-...
$ docker pass set myapp/postgres/password=s3cr3t
```

```yaml
services:
  api:
    image: service1
    environment:
      - ANTHROPIC_API_KEY=se://myapp/anthropic/api-key
      - POSTGRES_PASSWORD=se://myapp/postgres/password

  worker:
    image: service2
    command: worker
    environment:
      - ANTHROPIC_API_KEY=se://myapp/anthropic/api-key

  db:
    image: postgres:17
    environment:
      - POSTGRES_PASSWORD=se://myapp/postgres/password
```


## Subcomandos

| Comando                                                                                                                                     | Descripción                        |
| ------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------- | -------------------- |
|  | [`docker pass get`](https://docs-docker.esdocu.com/reference/cli/docker/pass/get/) | Obtiene un secreto de un llavero (keystore). |

 | [`docker pass ls`](https://docs-docker.esdocu.com/reference/cli/docker/pass/ls/) | Enumera todos los secretos del llavero local. |

 | [`docker pass rm`](https://docs-docker.esdocu.com/reference/cli/docker/pass/rm/) | Elimina secretos del llavero local. |

 | [`docker pass set`](https://docs-docker.esdocu.com/reference/cli/docker/pass/set/) | Establece un secreto |



