Kubernetes Java API for Kubectl copy command

孤街浪徒 提交于 2019-12-24 21:14:07

问题


I have a container running inside Kubernetes cluster (within POD) along side many other containers (in their own PODs) and my container is a common container. Now, I want to pull (copy) the files from other containers to my common container. I investigated for some options and found that kubectl copy can be used. But, for that, I need to include kubectl command line tool inside my common container. I'm not sure if this is right approach. So, I thought of using Java Kubernetes APIs to do the same. Is there equivalent Kubernetes REST API for Kubectl copy command ? I gone through the kubernetes APIs and could not find any such API ..

Thanks


回答1:


That's because kubectl cp is implemented via tar, so what is actually happening is kubectl exec $pod -- tar -cf - /the/container/file | tar -xf -, which is what I would expect your Java API would need to do, as well.

However, you may -- depending on your needs -- be able to get away with how I used to do it before kubectl cp arrived: kubectl exec $pod -- /bin/cat /the/container/file > local-file which in your circumstance may be a ton easier since I would expect the API would materialize those bytes as an InputStream, saving you the need to get into the tar-format-parsing business



来源:https://stackoverflow.com/questions/49421365/kubernetes-java-api-for-kubectl-copy-command

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!