记录下,kubectl操作文件与容器内交互(收藏)

672 阅读2分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

写在前面

kubectl是一款操作k8s容器的工具,这里运维的小伙伴可能更清楚些,但是作为研发的我们,也应该研究下,每天其实也是在与其并肩作战,那就是部署服务,我们删除容器,以达到快速部署的目的。

后端工程师应该懂得更多的运维技能

了解k8s的都知道 我们将镜像打包进容器内,容器内也是一套小的操作系统。

文件传输

平常我们如果与linux服务器进行文件传输的时候(不考虑客户端的情况,用命令敲)

将本地文件上传到服务器

scp -P 58010 xxx.tar.gz root@xxx.xxx.xx.171: /usr/local/data/

58010是端口号, xxx.tar.gz 是本地文件,root@xxx.xxx.xx.171便是服务器的登录账号以及地址

/usr/local/data/便是要传输给远程服务器的文件目录

很简单,上面这些大部分后端工程师也知道。那么接下来我们看下kubectl操作下文件

kubectl远程传输

tips:容器不是指在某一台机器上,所以我们肯定是操作某一镜像,不是操作某一台服务器。

image.png

Kubectl 复制本地文件进容器内部

命令如下:

kubectl -n namespace cp ./file.yaml pod:/folder/file.yaml

namespace:工作空间 pod,就是上图中的箭头所指的pod

kubectl -n dev cp ./api.yaml config-86948c5dc5-fwvjd:/usr/local/tomcat/webapps/api.yaml

dev便是namespace工具工间,config-86948c5dc5-fwvjd便是pod,./ths-api.yaml便是要上传的文件,/usr/local/tomcat/webapps/ths-api.yaml便是远程目录地址

Kubectl 将容器内文件复制到本地

kubectl cp dev/config-86948c5dc5-fwvjd:/usr/local/tomcat/webapps/api.yaml  api.yaml

好的 简单记录下。相信你以后一定用得到!!!

弦外之音

感谢你的阅读,如果你感觉学到了东西,麻烦您点赞,关注。也欢迎有问题我们下面评论交流

加油! 我们下期再见!

给大家分享几个我前面写的几篇骚操作

聊聊不一样的策略模式(值得收藏)

copy对象,这个操作有点骚!