云原生自动化应用于docker仓库私有凭据secret创建

作者:、重明 时间:2023-12-14 07:16:02 

Secret

Secret 是一种包含少量敏感信息例如密码、令牌或密钥的对象。 这样的信息可能会被放在 Pod 规约中或者镜像中。 使用 Secret 意味着你不需要在应用程序代码中包含机密数据。(这段话来自官网)

使用过程与ConfigMap类似

与ConfigMap不同的是:

ConfigMap用于明文,Secret用于加密文件,如:密码

ConfigMap是没有类型的,但是Secret有类型(type)

常用的Secret类型:

云原生自动化应用于docker仓库私有凭据secret创建

Secret的创建

还是使用比较常用的两种方式:kubectl和配置文件方式来创建

先创建一个实验环境:包含一个文件夹和两个文件

[root@k8s-master01 ~]# cd /secret/
[root@k8s-master01 secret]# echo -n 'yyang' > user.txt
[root@k8s-master01 secret]# echo -n '1qaz2wsx' > passwd.txt
[root@k8s-master01 secret]# ls
passwd.txt  user.txt

利用上面的环境创建以一个Secret

[root@k8s-master01 secret]# kubectl create secret generic db-user-pass \
> --from-file=user.txt \
> --from-file=passwd.txt
secret/db-user-pass created

查看这个secret的内容:类型为Opaque;内容中data下的内容已经用密文表示

[root@k8s-master01 secret]# kubectl get secrets
NAME                  TYPE                                  DATA   AGE
db-user-pass          Opaque                                2      68s
default-token-7h7vk   kubernetes.io/service-account-token   3      5h51m
[root@k8s-master01 secret]# kubectl get secrets db-user-pass -o yaml
apiVersion: v1
data:
 passwd.txt: MXFhejJ3c3g=
 user.txt: eXlhbmc=
kind: Secret
metadata:
 creationTimestamp: "2022-03-02T07:36:41Z"
 name: db-user-pass
 namespace: default
 resourceVersion: "40252"
 uid: a46ab9ed-c67c-4195-a5d6-f38dfc3d2016
type: Opaque

这个值是可以解密出来的:邮件前边的数据即为之前的加密数据

[root@k8s-master01 secret]# echo "MXFhejJ3c3g=" | base64 -d
1qaz2wsx您在 /var/spool/mail/root 中有新邮件

kubectl方式创建效果类似,就只给出官方的例子了(注意用单引号)

kubectl create secret generic db-user-pass \
 --from-literal=username=devuser \
 --from-literal=password='S!B\*d$zDsb='

还有一种是配置文件方式,这种方式是先把账号密码之类的数据转换为加密数据,然后创建一个yaml文件,随后执行yaml文件;这种方法比较麻烦就不说了,可以看一下官方的例子:
使用配置文件创建Secret

应用于docker私有仓库的secret

pull私有仓库的镜像时需要验证的情况,可以为docker私有仓库创建相应的secret。格式如下:
我就不写具体的创建了

kubectl create secret docker-registry secret-tiger-docker \
 --docker-username=user \
 --docker-password=pass113 \
 --docker-email=tiger@acme.com \
 --docker-server=string

以上几项内容分别的仓库的用户名、密码、邮箱和仓库地址

当你创建完这个secret后使用的时候可以放在spec下,与containers同级

spec:
     imagePullSecrets:
       - name: secret-tiger-docker
     containers:
       - image: 私有仓库地址
         name: nginx

这样下载私有仓库镜像时就不需要密码了。
注意的点:注意命名空间隔离问题

还有一个常用的类型就是tls,创建方式类似,使用也类似。就不写了,我也没有合适的环境。

其他

其他方面Secret与ConfigMap相近,请看这里
ConfigMap

来源:https://yyang.blog.csdn.net/article/details/123230018

标签:云原生,自动化,docker,Secret
0
投稿

猜你喜欢

  • Linux下Sendmail服务器转发功能的讲解

    2010-03-12 19:13:00
  • 服务器使用的几个基本注意事项

    2009-09-19 20:23:00
  • 江礼坤:网络推广之QQ群推广终极教程

    2009-04-07 10:13:00
  • 个人站长:如何建设自己的互联网品牌

    2009-03-05 13:46:00
  • 谷歌浏览器推出稳定版 1月12日将正式发布

    2009-11-20 13:57:00
  • Discuz!7.0如何发布外部链接视频主题

    2009-07-18 18:24:00
  • 网络传言谷歌将撤走中国境内服务器

    2009-10-24 13:58:00
  • 彭宇诚:如何利用软文推广产品

    2009-08-22 09:22:00
  • 闲谈 Web 图片服务器

    2008-03-20 13:43:00
  • 新的SQL注入攻击已经感染12.5万个网站

    2009-12-11 13:12:00
  • Mozilla称不跟风谷歌 不开发Firefox操作系统

    2009-11-22 09:39:00
  • GoDaddy:如何使用mod rewrite

    2010-04-22 12:53:00
  • DNS服务器:使用防火墙时的应用方法

    2009-05-14 10:36:00
  • 通用htaccess优化wordpress实现yslow评分达到A

    2010-10-20 18:17:00
  • dede设置会员登录后COOKIE保存时间

    2009-02-13 18:01:00
  • 快照不更新首页site不是第一解决实战篇

    2009-02-10 17:56:00
  • Windows 2008下利用Diskpart管理磁盘

    2008-12-08 14:35:00
  • 在WIN2000系统下安装JSP服务器

    2008-10-22 11:27:00
  • VMware下Centos7桥接方式网络配置步骤详解

    2021-09-09 09:17:51
  • 妙用SSL给IIS加把锁(一)

    2010-05-20 17:52:00
  • asp之家 网站运营 m.aspxhome.com