您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 开发 > WEB开发 >
    如何运用 Distroless 让你的容器愈加安全(4)
    时间:2021-08-07 08:09 来源:网络整理 作者:网络 浏览:收藏 挑错 推荐 打印

    NAME                               READY   UP-TO-DATE   AVAILABLE   AGE 

    deployment.apps/flask-deployment   2/2     2            2           88s 

     

    NAME                                          DESIRED   CURRENT   READY   AGE 

    replicaset.apps/flask-deployment-576496558b   2         2         2       89s 

    我们看到存在两个 Pods、一个 Deployment、一个带有外部 IP 的 LoadBalancer 效劳和一个 ReplicaSet。

    让我们拜访运用顺序:

    $ curl  

    Hello World! 

    我们失掉了 Hello World!。这表明 Flask 运用顺序在正常任务。

    运用 Shell 对运用顺序停止拜访

    正如我在引言中所描画的,Disroless 容器中没有 shell,因此不能够进入到容器内。但是,让我们试着在容器中执行 exec:

    $ kubectl exec -it flask-deployment-576496558b-hnbxt /bin/bash 

    OCI runtime exec failed: exec failed: container_linux.go:349: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory": unknown 

    command terminated with exit code 126 

    我们无法衔接到容器上。

    容器日志呢?假设拿不到容器日志,我们就失掉了调试运用顺序的办法。

    让我们试着去拿日志:

    $ kubectl logs flask-deployment-576496558b-hnbxt 

     * Running on :5000/ 

     * Restarting with reloader 

    10.128.0.4 - - [31/May/2020 13:40:27] "GET / HTTP/1.1" 200 - 

    10.128.0.3 - - [31/May/2020 13:42:01] "GET / HTTP/1.1" 200 - 

    所以容器日志是可以被获取到的!

    结论

    运用 Distroless 作为基础镜像是一种令人兴奋的保护容器安全的方式。由于镜像小并且仅包含运用顺序和依赖项,因此它为运用顺序提供了最小的攻击面。它在更大水平上提高了运用顺序的安全性,所以它是保护容器安全的好办法。

    (责任编辑:admin)