长期支持版本

    社区创新版本

      管理安全容器的生命周期

      启动安全容器

      用户可以使用docker-engine或者iSulad作为安全容器的容器引擎,两者的调用方式类似,请用户自行选择一种方式启动安全容器。

      启动安全容器的操作步骤如下:

      1. 确保安全容器组件已经正确安装部署。

      2. 准备容器镜像。假设容器镜像为busybox,使用docker-engine和iSula容器引擎下载容器镜像的命令分别如下:

        docker pull busybox
        
        isula pull busybox
        
      3. 启动一个安全容器。使用docker-engine和iSula容器引擎启动安全容器的命令分别如下:

        docker run -tid --runtime kata-runtime --network none busybox <command>
        
        isula run -tid --runtime kata-runtime --network none busybox <command>
        

        说明:
        安全容器网络使用仅支持CNI网络,不支持CNM网络,不支持使用-p和--expose暴露容器端口,使用安全容器时需指定参数--net=none。

      4. 启动一个Pod

        1. 启动pause容器并根据回显获取Pod的sandbox-id。使用docker-engine和iSula容器引擎启动的命令分别如下:

          docker run -tid --runtime kata-runtime --network none --annotation io.kubernetes.docker.type=podsandbox <pause-image> <command>
          
          isula run -tid --runtime kata-runtime --network none --annotation io.kubernetes.cri.container-type=sandbox <pause-image> <command>
          

            

        2. 创建业务容器并加入到这个Pod中。使用docker-engine和iSula容器引擎创建的命令分别如下:

          docker run -tid --runtime kata-runtime --network none --annotation io.kubernetes.docker.type=container --annotation io.kubernetes.sandbox.id=<sandbox-id> busybox <command>
          
          isula run -tid --runtime kata-runtime --network none --annotation io.kubernetes.cri.container-type=container --annotation io.kubernetes.cri.sandbox-id=<sandbox-id> busybox <command>
          

          --annotation用于容器类型的标注,这里的docker-engine和isula提供该字段,上游社区的开源docker引擎则不提供。

      停止安全容器

      • 停止一个安全容器。

        docker stop <contaienr-id>
        
      • 停止一个Pod。

        Pod停止需要注意顺序,pause容器与Pod生命周期相同,因此先停止业务容器后再停止pause容器。

      删除安全容器

      删除前请确保容器已经停止:

      docker rm <container-id>
      

      如果需要强制删除一个正在运行的容器,可以使用**-f**强制删除:

      docker rm -f <container-id>
      

      在容器中执行一条新的命令

      由于pause容器仅作为占位容器,如果启动一个Pod时,请在业务容器内执行新的命令,pause容器并没有相应的指令。如果只启动一个容器时,则可以直接执行新增命令:

      docker exec -ti <container-id> <command>
      

      说明:

      1. 如遇到docker exec -ti进入容器的同时,另一终端执行docker restart或者docker stop命令造成exec界面卡住的情况,可使用“Ctrl+P+Q”退出docker exec操作界面。
      2. 如果使用-d参数则命令在后台执行,不会打印错误信息,其退出码也不能作为命令执行是否正确的判断依据。

      文档捉虫

      “有虫”文档片段

      问题描述

      提交类型 issue

      有点复杂...

      找人问问吧。

      PR

      小问题,全程线上修改...

      一键搞定!

      问题类型
      规范和低错类

      ● 错别字或拼写错误;标点符号使用错误;

      ● 链接错误、空单元格、格式错误;

      ● 英文中包含中文字符;

      ● 界面和描述不一致,但不影响操作;

      ● 表述不通顺,但不影响理解;

      ● 版本号不匹配:如软件包名称、界面版本号;

      易用性

      ● 关键步骤错误或缺失,无法指导用户完成任务;

      ● 缺少必要的前提条件、注意事项等;

      ● 图形、表格、文字等晦涩难懂;

      ● 逻辑不清晰,该分类、分项、分步骤的没有给出;

      正确性

      ● 技术原理、功能、规格等描述和软件不一致,存在错误;

      ● 原理图、架构图等存在错误;

      ● 命令、命令参数等错误;

      ● 代码片段错误;

      ● 命令无法完成对应功能;

      ● 界面错误,无法指导操作;

      风险提示

      ● 对重要数据或系统存在风险的操作,缺少安全提示;

      内容合规

      ● 违反法律法规,涉及政治、领土主权等敏感词;

      ● 内容侵权;

      您对文档的总体满意度

      非常不满意
      非常满意
      提交
      根据您的反馈,会自动生成issue模板。您只需点击按钮,创建issue即可。
      文档捉虫
      编组 3备份