Kubectl edit直接编辑secret:修订间差异
来自三线的随记
(创建页面,内容为“主要是配合vim的能力来实现 所以首先需要保证kubectl edit调用的是vim 而不是 vi 或其他编辑器 可以通过环境变量指定使用vim export KUBE_EDITOR=vim 然后开始编辑secret,例如 kubectl edit secret default 找到需要编辑的data 然后对base64以后的编码内容换行,保证整行内容都是base64处理后的结果 光标移动到base64以后的编码内容所在行 按下 <code>:</code> 进入vim的命令…”) |
小无编辑摘要 |
||
第1行: | 第1行: | ||
主要是配合vim的能力来实现,或者假如原本的secret中的内容已经解码过了 / 可以完全覆盖,那么可以直接去掉secret 里面 data: 以及data下的所有声明,然后用stringData进行写入,保存以后会自动编码为base64,例如: | |||
apiVersion: v1 | |||
stringData: | |||
test.yaml: |- | |||
11231313123123 | |||
kind: Secret | |||
metadata: | |||
name: test | |||
type: Opaque | |||
所以首先需要保证kubectl edit调用的是vim 而不是 vi 或其他编辑器 | 所以首先需要保证kubectl edit调用的是vim 而不是 vi 或其他编辑器 | ||
2024年10月5日 (六) 01:55的最新版本
主要是配合vim的能力来实现,或者假如原本的secret中的内容已经解码过了 / 可以完全覆盖,那么可以直接去掉secret 里面 data: 以及data下的所有声明,然后用stringData进行写入,保存以后会自动编码为base64,例如:
apiVersion: v1 stringData: test.yaml: |- 11231313123123 kind: Secret metadata: name: test type: Opaque
所以首先需要保证kubectl edit调用的是vim 而不是 vi 或其他编辑器
可以通过环境变量指定使用vim
export KUBE_EDITOR=vim
然后开始编辑secret,例如 kubectl edit secret default
找到需要编辑的data
然后对base64以后的编码内容换行,保证整行内容都是base64处理后的结果
光标移动到base64以后的编码内容所在行
按下 :
进入vim的命令模式,输入 . ! base64 -d
即可解码,然后进行编辑
编辑完成以后,如果相应的解码后内容还在同一行,那就
同样按下 : 进入vim的命令模式,输入 . ! base64 -w0
即可编码,例如 :'<,'> ! base64 -w0
如果需要编码的内容不在同一行,那么可以按下 Shift + V
进入vim的行visual模式以选中多行,然后再按下 :
进入vim的命令模式
输入 '<,'> ! base64 -w0
即可编码,例如 :'<,'> ! base64 -w0