kubectl удаление / создание секрета запрещено (облачная платформа Google) - PullRequest
0 голосов
/ 25 апреля 2018

Я следовал следующему учебнику по непрерывной интеграции с использованием gitlab и Kubernetes (в моем случае это облако Google): https://about.gitlab.com/2016/12/14/continuous-delivery-of-a-spring-boot-application-with-gitlab-ci-and-kubernetes/.

В какой-то момент в учебнике вам сначала нужно будет удалить, а затем создатьсекрет для реестра изображений Gitlab:

- kubectl delete secret registry.gitlab.com
- kubectl create secret docker-registry registry.gitlab.com --docker-server=https://registry.gitlab.com --docker-username=$REGISTRY_USERNAME --docker-password=$REGISTRY_PASSWD --docker-email=$EMAIL

На этом шаге что-то идет не так, я получаю следующую ошибку:

Error from server (Forbidden): secrets "registry.gitlab.com" is forbidden: User "client" cannot delete secrets in the namespace "default": Unknown user "client"
Error from server (Forbidden): secrets is forbidden: User "client" cannot create secrets in the namespace "default": Unknown user "client"

Я получаю точно такую ​​же ошибку в облачной оболочке Google:

enter image description here

Добавление следующей строки не очень помогает, я все еще получаю ошибку создания (я также на 100% уверен, что удаление также 'вылетает'но' 2> / dev / null 'просто заставляет его перейти к шагу создания):

kubectl delete secret registry.gitlab.com 2>/dev/null || echo "secret does not exist"

Что я делаю не так?Спасибо заранее!

1 Ответ

0 голосов
/ 25 апреля 2018

RUN gcloud config unset container/use_client_certificate

После этого выйдите и войдите. Он должен работать. Это происходит при отключении устаревшей авторизации в настройках кластера, поскольку используемый вами сертификат клиента является устаревшим методом аутентификации

...