我使用命令docker context use
来设置活动Docker上下文:
> docker context use aws-context
aws-context
但是,由于某些原因,活动Docker上下文不会更改。
当我随后输入docker context show
时,激活的上下文仍然是默认上下文:
> docker context show
default
当我列出现有的上下文时,星号仍然在默认上下文后面:
> docker context ls
NAME TYPE DESCRIPTION DOCKER ENDPOINT
aws-context ecs (eu-west-1)
default * moby Current DOCKER_HOST based configuration tcp://192.168.99.100:2376
如何更改Docker上下文?
3条答案
按热度按时间wz1wpwve1#
如果您设置了
DOCKER_HOST
环境变量,它将始终优先于较新的docker context use
工作流。在shell中输入
env | grep DOCKER
,查看是否设置了任何特定于docker的变量。通过键入unset DOCKER_HOST
取消设置它们。其他变量(如DOCKER_CONTEXT
)也可能会影响访问。一旦该变量被删除,
docker context use
命令应该可以正常工作。这在这里的文档中指出:
查看上下文的最简单方法是查看默认上下文。
这显示了一个称为“默认”的上下文。它被配置为通过本地
/var/run/docker.sock
Unix套接字与Swarm集群通信。它没有配置Kubernetes端点。NAME
列中的星号表示这是活动上下文。这意味着所有docker
命令都将在“默认”上下文下执行,除非使用环境变量(如DOCKER_HOST
和DOCKER_CONTEXT
)覆盖,或者在命令行上使用--context
和--host
标志。(bold由我添加)
fjnneemd2#
我也遇到了env变量的问题:
DOCKER_CONTEXT
。请确保您设置正确.
而不是:
用途:
或者(如果你在VSCode中使用docker扩展,修改settings.json)
Ctrl+Shift+p ->打开工作区设置(JSON)
bvuwiixz3#
将docker context设置为
default
对我来说很有效。