Files
podman/docs/source/markdown/podman-login.1.md.in
Daniel J Walsh fe910ae96d Fix up example description of podman-logout.1.md.in
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2024-02-18 19:10:40 -05:00

140 lines
4.7 KiB
Markdown

% podman-login 1
## NAME
podman\-login - Log in to a container registry
## SYNOPSIS
**podman login** [*options*] [*registry*]
## DESCRIPTION
**podman login** logs into a specified registry server with the correct username
and password. If the registry is not specified, the first registry under [registries.search]
from registries.conf is used. **podman login** reads in the username and password from STDIN.
The username and password can also be set using the **username** and **password** flags.
The path of the authentication file can be specified by the user by setting the **authfile**
flag. The default path for reading and writing credentials is **${XDG\_RUNTIME\_DIR}/containers/auth.json**.
Podman uses existing credentials if the user does not pass in a username.
Podman first searches for the username and password in the **${XDG\_RUNTIME\_DIR}/containers/auth.json**, if they are not valid,
Podman then uses any existing credentials found in **$HOME/.docker/config.json**.
If those credentials are not present, Podman creates **${XDG\_RUNTIME\_DIR}/containers/auth.json** (if the file does not exist) and
then stores the username and password from STDIN as a base64 encoded string in it.
For more details about format and configurations of the auth.json file, see containers-auth.json(5)
**podman [GLOBAL OPTIONS]**
**podman login [GLOBAL OPTIONS]**
**podman login [OPTIONS] [REGISTRY] [GLOBAL OPTIONS]**
## OPTIONS
@@option authfile
@@option cert-dir
#### **--compat-auth-file**=*path*
Instead of updating the default credentials file, update the one at *path*, and use a Docker-compatible format.
#### **--get-login**
Return the logged-in user for the registry. Return error if no login is found.
#### **--help**, **-h**
Print usage statement
#### **--password**, **-p**=*password*
Password for registry
#### **--password-stdin**
Take the password from stdin
#### **--secret**=*name*
Read the password for the registry from the podman secret `name`.
If --username is not specified --username=`name` is used.
@@option tls-verify
#### **--username**, **-u**=*username*
Username for registry
#### **--verbose**, **-v**
print detailed information about credential store
## EXAMPLES
Add login credentials for specified registry to default authentication file.
```
$ podman login quay.io
Username: umohnani
Password:
Login Succeeded!
```
Add login credentials using specified username and password for local registry to default authentication file.
```
$ podman login -u testuser -p testpassword localhost:5000
Login Succeeded!
```
Add login credentials for alternate authfile path for the specified registry.
```
$ podman login --authfile authdir/myauths.json quay.io
Username: umohnani
Password:
Login Succeeded!
```
Add login credentials using a Podman secret for the password.
```
$ echo -n MySecret! | podman secret create secretname -
a0ad54df3c97cf89d5ca6193c
$ podman login --secret secretname -u testuser quay.io
Login Succeeded!
```
Add login credentials for user test with password test to localhost:5000 registry disabling tls verification requirement.
```
$ podman login --tls-verify=false -u test -p test localhost:5000
Login Succeeded!
```
Add login credentials for user foo with password bar to localhost:5000 registry using the certificate directory /etc/containers/certs.d.
```
$ podman login --cert-dir /etc/containers/certs.d/ -u foo -p bar localhost:5000
Login Succeeded!
```
Add login credentials for specified registries to default authentication file for given user with password information provided via stdin from a file on disk.
```
$ podman login -u testuser --password-stdin < testpassword.txt docker.io
Login Succeeded!
```
Add login credentials for specified registry to default authentication file for given user with password information provided via stdin from a pipe.
```
$ echo $testpassword | podman login -u testuser --password-stdin quay.io
Login Succeeded!
```
Add login credentials for specified registry to default authentication file in verbose mode.
```
$ podman login quay.io --verbose
Username: myusername
Password:
Used: /run/user/1000/containers/auth.json
Login Succeeded!
```
## SEE ALSO
**[podman(1)](podman.1.md)**, **[podman-logout(1)](podman-logout.1.md)**, **[containers-auth.json(5)](https://github.com/containers/image/blob/main/docs/containers-auth.json.5.md)**, **[containers-certs.d(5)](https://github.com/containers/image/blob/main/docs/containers-certs.d.5.md)**, **[containers-registries.conf(5)](https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md)**, **[podman-secret(1)](podman-secret.1.md)**, **[podman-secret-create(1)](podman-secret-create.1.md)**
## HISTORY
August 2017, Originally compiled by Urvashi Mohnani <umohnani@redhat.com>