Skip to content

Home 中文

rambolized edited this page Jun 14, 2021 · 11 revisions

中文 | English

大家好,感谢使用Metarget,欢迎来到Metarget Wiki!

注:Wiki正在建设中,目前还请移步README.md

指南

常见问题解答

为什么用kubectl看不到部署的资源?

为方便管理,Metarget部署的所有资源都在metarget命名空间下,请添加命名空间参数,如查看部署的Pod:

kubectl get pods -n metarget

为什么安装了Docker还不能部署appv

Metarget的初衷是为了更快地部署云原生基础设施层次的漏洞环境,后来拓展出了appv,以便部署多层次复杂场景。appv目前全部是以Kubernetes资源的YAML声明文件的形式存储,因此只能够在Kubernetes集群上部署,所以为了部署appv,需要先执行cnv install或者gadget install装一个Kubernetes集群(其实用Metarget也就是一行命令)。

后期Metarget可能会考虑增加对Docker及docker-compose的支持,具体进度可关注相关issue,不过近期暂不会考虑去支持。

为什么appv install成功了却无法访问服务?

如果是第一次部署某个appv,Kubernetes后台可能正在拉取相关容器镜像,可以执行以下命令查看当前服务的部署状态:

kubectl get pods -n metarget

如果心急🙄,可以同时手动执行拉取操作,这样您就能看到镜像拉取进度了。拉取完毕,则服务就会很快启动。例如,执行以下命令以手动拉取DVWA镜像:

docker pull vulnerables/web-dvwa

另外,为了能够通过直接访问Kubernetes主机节点的ip:port来访问服务,您需要在最初appv install的时候指定--external参数。这样一来,Metarget将自动为您创建的应用分配一个端口并输出到屏幕上,您可以通过主机上的这个端口访问到Kubernetes pods中的脆弱应用。