Если ваш докер-контейнер работает внутри кластера kubernetes, вы можете получить доступ к API kubernetes через службу.В пространстве имен по умолчанию служба уже предоставлена как kubernetes
, поэтому URL-адрес соединения будет https://kubernetes/
.
Если вы запускаете Docker-контейнер локально и хотите использовать kubectl proxy
для доступа к kubernetesapi контейнер Docker должен работать без изоляции сети, чтобы иметь возможность доступа к локальному порту прокси: docker run --net=host
.Это работает, только если вы используете Linux, в MacOS или Windows виртуальная машина используется для размещения док-контейнеров, а localhost
- это виртуальная машина, а не ваш рабочий стол.Затем вы должны использовать одно из специальных имен хостов docker.for.mac.host.internal
или docker.for.win.localhost
, но вам нужно будет соответственно запустить kubectl-proxy для прослушивания не только в петлевом сетевом интерфейсе, так как запрос будет поступать от docker-vm,который является внешним.
Кстати: если вы используете kubectl-proxy, он автоматически аутентифицирует запросы и нет необходимости добавлять токен на предъявителя.