mirror of
https://github.com/containers/podman.git
synced 2025-07-15 03:02:52 +08:00
If CONTAINER_HOST env variable is set default podman --remote=true
Users enabling CONTAINER_HOST==PATH is indicating to podman they intend to use remote functionality. Fixes: https://github.com/containers/podman/issues/11196 Update man pages to document all of the environment variables. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
This commit is contained in:
@ -314,7 +314,15 @@ func rootFlags(cmd *cobra.Command, opts *entities.PodmanConfig) {
|
|||||||
lFlags.StringVar(&opts.Identity, identityFlagName, ident, "path to SSH identity file, (CONTAINER_SSHKEY)")
|
lFlags.StringVar(&opts.Identity, identityFlagName, ident, "path to SSH identity file, (CONTAINER_SSHKEY)")
|
||||||
_ = cmd.RegisterFlagCompletionFunc(identityFlagName, completion.AutocompleteDefault)
|
_ = cmd.RegisterFlagCompletionFunc(identityFlagName, completion.AutocompleteDefault)
|
||||||
|
|
||||||
lFlags.BoolVarP(&opts.Remote, "remote", "r", false, "Access remote Podman service (default false)")
|
remote := false
|
||||||
|
if env, ok := os.LookupEnv("CONTAINER_HOST"); ok {
|
||||||
|
logrus.Infof("CONTAINER_HOST==%q, defaulting to '--remote=true'", env)
|
||||||
|
remote = true
|
||||||
|
} else if env, ok := os.LookupEnv("CONTAINER_CONNECTION"); ok {
|
||||||
|
logrus.Infof("CONTAINER_CONNECTION==%q, defaulting to '--remote=true'", env)
|
||||||
|
remote = true
|
||||||
|
}
|
||||||
|
lFlags.BoolVarP(&opts.Remote, "remote", "r", remote, "Access remote Podman service")
|
||||||
pFlags := cmd.PersistentFlags()
|
pFlags := cmd.PersistentFlags()
|
||||||
if registry.IsRemote() {
|
if registry.IsRemote() {
|
||||||
if err := lFlags.MarkHidden("remote"); err != nil {
|
if err := lFlags.MarkHidden("remote"); err != nil {
|
||||||
|
@ -29,6 +29,8 @@ The `containers.conf` file should be placed under `$HOME/.config/containers/cont
|
|||||||
|
|
||||||
Remote connection name
|
Remote connection name
|
||||||
|
|
||||||
|
Overrides environment variable `CONTAINER_CONNECTION` if set.
|
||||||
|
|
||||||
#### **--help**, **-h**
|
#### **--help**, **-h**
|
||||||
|
|
||||||
Print usage statement
|
Print usage statement
|
||||||
@ -71,6 +73,26 @@ URL value resolution precedence:
|
|||||||
|
|
||||||
Print the version
|
Print the version
|
||||||
|
|
||||||
|
## Environment Variables
|
||||||
|
|
||||||
|
Podman can set up environment variables from env of [engine] table in containers.conf. These variables can be overridden by passing environment variables before the `podman` commands.
|
||||||
|
|
||||||
|
#### **CONTAINERS_CONF**
|
||||||
|
|
||||||
|
Set default locations of containers.conf file
|
||||||
|
|
||||||
|
#### **CONTAINER_CONNECTION**
|
||||||
|
|
||||||
|
Set default `--connection` value to access Podman service.
|
||||||
|
|
||||||
|
#### **CONTAINER_HOST**
|
||||||
|
|
||||||
|
Set default `--url` value to access Podman service.
|
||||||
|
|
||||||
|
#### **CONTAINER_SSHKEY**
|
||||||
|
|
||||||
|
Set default `--identity` path to ssh key file value used to access Podman service.
|
||||||
|
|
||||||
## Exit Status
|
## Exit Status
|
||||||
|
|
||||||
The exit code from `podman` gives information about why the container
|
The exit code from `podman` gives information about why the container
|
||||||
|
@ -93,8 +93,9 @@ When namespace is set, created containers and pods will join the given namespace
|
|||||||
Path to the command binary to use for setting up a network. It is currently only used for setting up a slirp4netns network. If "" is used then the binary is looked up using the $PATH environment variable.
|
Path to the command binary to use for setting up a network. It is currently only used for setting up a slirp4netns network. If "" is used then the binary is looked up using the $PATH environment variable.
|
||||||
|
|
||||||
#### **--remote**, **-r**
|
#### **--remote**, **-r**
|
||||||
Access Podman service will be remote
|
When true, access to the Podman service will be remote. Defaults to false.
|
||||||
Remote connections use local containers.conf for default.
|
Settings can be modified in the containers.conf file. If the CONTAINER_HOST
|
||||||
|
environment variable is set, the remote option defaults to true.
|
||||||
|
|
||||||
#### **--url**=*value*
|
#### **--url**=*value*
|
||||||
URL to access Podman service (default from `containers.conf`, rootless `unix://run/user/$UID/podman/podman.sock` or as root `unix://run/podman/podman.sock`).
|
URL to access Podman service (default from `containers.conf`, rootless `unix://run/user/$UID/podman/podman.sock` or as root `unix://run/podman/podman.sock`).
|
||||||
@ -172,6 +173,58 @@ Print the version
|
|||||||
|
|
||||||
Podman can set up environment variables from env of [engine] table in containers.conf. These variables can be overridden by passing environment variables before the `podman` commands.
|
Podman can set up environment variables from env of [engine] table in containers.conf. These variables can be overridden by passing environment variables before the `podman` commands.
|
||||||
|
|
||||||
|
#### **CONTAINERS_CONF**
|
||||||
|
|
||||||
|
Set default locations of containers.conf file
|
||||||
|
|
||||||
|
#### **CONTAINERS_REGISTRIES_CONF**
|
||||||
|
|
||||||
|
Set default location of the registries.conf file.
|
||||||
|
|
||||||
|
#### **CONTAINERS_STORAGE_CONF**
|
||||||
|
|
||||||
|
Set default location of the storage.conf file.
|
||||||
|
|
||||||
|
#### **CONTAINER_CONNECTION**
|
||||||
|
|
||||||
|
Override default `--connection` value to access Podman service. Also enabled --remote option.
|
||||||
|
|
||||||
|
#### **CONTAINER_HOST**
|
||||||
|
|
||||||
|
Set default `--url` value to access Podman service. Also enabled --remote option.
|
||||||
|
|
||||||
|
#### **CONTAINER_SSHKEY**
|
||||||
|
|
||||||
|
Set default `--identity` path to ssh key file value used to access Podman service.
|
||||||
|
|
||||||
|
#### **STORAGE_DRIVER**
|
||||||
|
|
||||||
|
Set default `--storage-driver` value.
|
||||||
|
|
||||||
|
#### **STORAGE_OPTS**
|
||||||
|
|
||||||
|
Set default `--storage-opts` value.
|
||||||
|
|
||||||
|
#### **TMPDIR**
|
||||||
|
|
||||||
|
Set the the temporary storage location of downloaded container images. Podman defaults to use `/var/tmp`.
|
||||||
|
|
||||||
|
#### **XDG_CONFIG_HOME**
|
||||||
|
|
||||||
|
In Rootless mode configuration files are read from `XDG_CONFIG_HOME` when
|
||||||
|
specified, otherwise in the home directory of the user under
|
||||||
|
`$HOME/.config/containers`.
|
||||||
|
|
||||||
|
#### **XDG_DATA_HOME**
|
||||||
|
|
||||||
|
In Rootless mode images are pulled under `XDG_DATA_HOME` when specified,
|
||||||
|
otherwise in the home directory of the user under
|
||||||
|
`$HOME/.local/share/containers/storage`.
|
||||||
|
|
||||||
|
#### **XDG_RUNTIME_DIR**
|
||||||
|
|
||||||
|
In Rootless mode temporary configuration data is stored in `${XDG_RUNTIME_DIR}/containers`.
|
||||||
|
|
||||||
## Remote Access
|
## Remote Access
|
||||||
|
|
||||||
The Podman command can be used with remote services using the `--remote` flag. Connections can
|
The Podman command can be used with remote services using the `--remote` flag. Connections can
|
||||||
|
@ -93,6 +93,15 @@ function setup() {
|
|||||||
is "$output" "Error: unknown flag: --remote" "podman version --remote"
|
is "$output" "Error: unknown flag: --remote" "podman version --remote"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@test "podman-remote: defaults" {
|
||||||
|
if is_remote; then
|
||||||
|
skip "only applicable on a local run"
|
||||||
|
fi
|
||||||
|
|
||||||
|
CONTAINER_HOST=foobar run_podman --log-level=info --help
|
||||||
|
is "$output" ".*defaulting to '--remote=true'" "CONTAINER_HOST sets --remote true"
|
||||||
|
}
|
||||||
|
|
||||||
# Check that just calling "podman-remote" prints the usage message even
|
# Check that just calling "podman-remote" prints the usage message even
|
||||||
# without a running endpoint. Use "podman --remote" for this as this works the same.
|
# without a running endpoint. Use "podman --remote" for this as this works the same.
|
||||||
@test "podman-remote: check for command usage message without a running endpoint" {
|
@test "podman-remote: check for command usage message without a running endpoint" {
|
||||||
|
Reference in New Issue
Block a user