天天看点

k8s harbor 重置密码

作者:区块软件开发

简介 本文只介绍通过kubernetes部署的harbor镜像仓库,而不知道admin密码的方案。1. 通过什么方式查询初始密码2. 密码丢失通过什么方式修改密码![](http://sour

本文只介绍通过kubernetes部署的harbor镜像仓库,而不知道admin密码的方案。

  1. 通过什么方式查询初始密码
  2. 密码丢失通过什么方式修改密码
k8s harbor 重置密码

通过查询Secret查询harbor密码

$ kubectl get secret -n {NAMESPACE} harbor-core-envvars --template={{.data.HARBOR_ADMIN_PASSWORD}} | base64 -d
           
k8s harbor 重置密码

如果该密码无效,则可以考虑直接修改postgresql数据库的harbor账号的密码

通过修改postgresql修改harbor密码

找到harbor-postgresql-0这个pods并进入 harbor-postgresql-0 pods

$ kubectl get pods -n {NAMESPACE} | grep postgresql
$ kubectl exec -it -n {NAMESPACE} harbor-postgresql-0 -c postgresql "--" sh -c "clear; (bash || ash || sh)"
           
k8s harbor 重置密码

然后执行postgres命令进入到数据库

$ psql -U postgres -d registry
// 输入密码,密码从 secrets 获得
           
  • -U 用户名
  • -d 数据库

然后输入密码,如果不知道密码是啥执行命令获取Secret可以查看到密码

$ kubectl get secret -n {NAMESPACE} harbor-core-envvars  --template={{.data.POSTGRESQL_PASSWORD}} | base64 -d
           
k8s harbor 重置密码

成功进入到数据库之后执行命令查询

$ select * from harbor_user where username = 'admin'\G;
           

执行命令更新数据库密码,将admin用户的初始密码修改为 Harbor12345

$ update harbor_user set password='a71a7d0df981a61cbb53a97ed8d78f3e', salt='ah3fdh5b7yxepalg9z45bu8zb36sszmr' where username='admin';
           
k8s harbor 重置密码

退出 \q 退出postgresql,exit退出容器。

继续阅读