容器DevSecOps全链路体验

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: 本场景带您体验基于ACR EE的云原生应用交付链实践,如何将安全内置在DevOps的流程,将流水线升级为DevSecOps,保障端到端的容器业务安全。

容器DevSecOps全链路体验


1. 创建一个ACR EE实例-高级版

本步骤将指导您如何创建一个ACR EE实例-高级版,相关操作,请参考创建企业版实例。。

  1. 登录容器镜像服务控制台
  2. 在顶部菜单栏,选择所需地域。例如选择华东1(杭州)。

  1. 在左侧导航栏,单击实例列表

  1. 实例列表页面,单击创建企业版实例

  1. 创建企业版实例页面,完成基本信息的配置,然后单击立即购买

参数

说明

地域

选择企业版实例所在的地域。

实例规格

选择实例规格。本实验中选择高级版。更多信息,请参见什么是容器镜像服务ACR

实例名称

输入实例名称。

实例存储

支持默认自定义

默认:默认将在您账号下创建OSS Bucket托管容器镜像。

自定义:可自定义选择已有OSS Bucket托管容器镜像。

选择Bucket

选择已有Bucket托管容器镜像。

说明:仅设置实例存储自定义时,需要设置该项。

安全扫描

提供镜像安全扫描功能,支持选择以下两种安全扫描引擎:

Trivy扫描引擎:开源扫描引擎,支持检测系统漏洞和应用漏洞,不支持一键修复系统漏洞功能。

云安全扫描引擎:阿里云自研的扫描引擎,支持检测系统漏洞、应用漏洞、基线检查和恶意样本,支持一键修复系统漏洞功能。

仓库配额

基础版默认仓库配额为1000,标准版为3000,高级版为5000,您可以在这里按需额外增加仓库配额。

命名空间配额

基础版默认命名空间配额为15,标准版为25,高级版为50,您可以在这里按需额外增加命名空间配额。

购买时长

目前支持选择1、2、3、6个月和1~5年。

说明:您还可以设置是否到期自动续费。

  1. 确认订单页面确认并选中我已阅读并同意容器镜像服务企业版服务协议,单击去支付
  2. 支付页面底部查看实例的总费用,如无疑问,根据提示完成支付。
  3. 实例列表页面新建实例的运行状态为启动中。大约2到3分钟后,状态会变为运行中

2. 配置专有网络的访问控制

  1. 本步骤将指导您如何完成企业版实例的初始化操作,添加一个VPC作为云安全中心访问企业版实例的通道。相关操作,请参考配置 VPC 访问控制
  1. 登录容器镜像服务控制台
  2. 在顶部菜单栏,选择所需地域。

  1. 在左侧导航栏,选择实例列表

  1. 实例列表页面,单击目标企业版实例。
  2. 在企业版实例管理页面左侧导航栏中,选择仓库管理>访问控制

说明:如果您需要为Helm Chart配置访问控制,请选择Helm Chart>访问控制

  1. 专有网络页签下,单击添加专有网络
  2. 添加专有网络对话框中,分别选择已有专有网络和已有交换机,并单击确定

说明:只需要绑定一台交换机与专有网络,该专有网络下的ECS都可以访问企业版实例。

待该专有网络的状态由创建中变为已生效后,说明专有网络添加成功。

  1. 可选:查看云解析PrivateZone的解析Zone。

创建专有网络成功后,ACR会自动在云解析PrivateZone中创建解析Zone,为您解析域名。您可以在云解析PrivateZone查看解析Zone。

  1. 登录云解析DNS控制台
  2. 在控制台左侧导航栏单击PrivateZone

权威Zone页签下查看解析Zone。

3. 上传源码

  1. 本步骤将指导您如何在Codeup中上传源码。
  2. 登录Codeup
  3. 代码库页面,单击添加库>导入代码库

  1. 导入代码库对话框中,选择URL导入源代码库地址按如下填写,单击确定
https://github.com/susanna8930/workshop.git

耐心等待片刻并刷新页面,返回如下页面,表示代码导入成功。

4. 绑定代码源

本步骤将指导您如何绑定企业版实例与源代码托管平台,便于您后续进行构建镜像等操作。

  1. 创建阿里云Codeup个人访问令牌。
  1. 登录Codeup
  2. 在云效Codeup页面单击个人账号,然后单击个人设置

  1. 个人设置页面左侧导航栏,单击个人访问令牌

  1. 个人访问令牌页面,单击创建访问令牌

  1. 创建访问令牌页面,设置名称过期时间,选择授予的权限,然后单击立即创建

以下为创建访问令牌需要授予的最小权限。

  • 用户相关信息的只读权限:read:user
  • 代码库的只读权限:read:repo
  • 代码库分支的只读权限:read:repo:branch
  • 代码库标签的只读权限:read:repo:tag
  • 代码库Webhook的全部读写权限:read:repo:webhook、write:repo:webhook
  • 代码组的全部读权限:read:group
  • 企业相关信息的只读权限:read:org

创建完成后,您可以查看到创建的访问令牌。

  1. 查看HTTPS克隆账号名。

个人设置页面左侧导航栏,单击HTTPS密码,查看克隆账号。

  1. 绑定阿里云Codeup代码平台。
  1. 登录容器镜像服务控制台
  2. 在顶部菜单栏,选择所需地域。
  3. 在左侧导航栏,选择实例列表
  4. 实例列表页面单击目标企业版实例。
  5. 在企业版实例管理页面选择仓库管理>代码源
  6. 代码源页面单击阿里云Codeup操作列下的绑定账号
  7. 在对话框中设置参数,然后单击确定
  • 地址:无需填写。

说明:绑定阿里云Codeup时,系统会自动识别该地址。

  • 用户名称:输入步骤二获取的HTTPS克隆账号名。
  • 个人访客令牌:输入步骤一创建的访问令牌。

在代码源页面阿里云Codeup操作列显示已绑定,说明绑定成功。

5. 创建源代码仓库

本步骤将指导您如何传几个源代码仓库。

  1. 企业版实例管理页面左侧导航栏,选择仓库管理>镜像仓库,单击创建镜像仓库。
  2. 创建命名空间为demo,仓库名称为workshop,设置仓库类型为公开。

说明:仅Workshop示意,不建议生产环境开启。

  1. 选择预先导入的Codeup代码仓库默认开启代码变更自动构建镜像,单击创建镜像仓库。
  2. 镜像仓库页面,单击目标仓库右侧操作列中的管理。
  3. 在左侧导航栏中,单击构建
  4. 构建规则设置区域单击添加规则,根据如下配置构建规则,然后单击确定
  • 构建信息页面:选择 Branch 类型,从下拉框中选择 master 分支。
  • 镜像版本页面:填写镜像版本 v1.0,点击保存。

创建完成后,可在源代码仓库查看对应的构建规则,单击立即构建,可从Codeup上拉取容器镜像进行构建。

6. 创建云原生应用交付链

  1. 本步骤将指导您如何创建云原生应用交付链。
  2. 在企业版实例管理页面左侧导航栏中,选择云原生交付链 > 交付链
  • 创建交付链页面基本信息区域,输入以下信息。
  • 交付链名称:设置交付链的名称。
  • (可选)交付链描述:设置交付链的基本描述。
  1. 交付链作用范围:选择前面创建的源代码仓库。
  2. 在交付链的安全扫描节点,配置以下信息。
  • 安全引擎:选择云安全中心安全引擎
  • 是否阻断:选择阻断。
  • 是否删除:选择不删除
  • 漏洞等级:选择高危,漏洞个数:1个

7. 修改Codeup源代码,触发交付链自动构建及安全扫描

本步骤将指导您如何修改Codeup源代码,触发交付链自动构建及安全扫描。

  1. Codeup,任意修改hello-world.go的文件内容。
  2. 在交付链的执行记录页面,查看当前交付链的执行情况。稍等片刻,发现交付链已被阻断,执行状态为取消
  3. 单击操作详情,查看容器镜像的漏洞情况。

8. 一键修复容器镜像,再次触发交付链流程

本步骤将指导您如何一键修复容器镜像,再次触发交付链流程。

  1. 单击一键修复,选择不覆盖,将以_fixed为后缀形成新的容器镜像版本,然后单击立即修复

  1. 在交付链的执行记录页面,查看当前交付链的执行情况。稍等片刻,发现容器镜像已修复完成,顺着交付链完成了后续流程。

  1. 单击安全扫描节点,发现镜像漏洞已经全部修复完成了。

实验链接:https://developer.aliyun.com/adc/scenario/3aac1509cd4d46cd808598afe567fa1e

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
19天前
|
域名解析 Kubernetes 负载均衡
在K8S中,外部访问容器服务,比如说提供了一个域名,链路怎么走?数据经过哪些组件?
在K8S中,外部访问容器服务,比如说提供了一个域名,链路怎么走?数据经过哪些组件?
|
域名解析 弹性计算 运维
带你读《企业级云原生白皮书项目实战》——3.3.1 入方向
带你读《企业级云原生白皮书项目实战》——3.3.1 入方向
126 0
带你读《企业级云原生白皮书项目实战》——3.3.1 入方向
|
安全 Cloud Native 算法
《云原生架构容器&微服务优秀案例集》——01 互联网——唱鸭 轻松玩转 DevSecOps,用 ACR EE 构建安全高效交付流程
《云原生架构容器&微服务优秀案例集》——01 互联网——唱鸭 轻松玩转 DevSecOps,用 ACR EE 构建安全高效交付流程
498 0
|
弹性计算 监控 Cloud Native
带你读《企业级云原生白皮书项目实战》——3.3.2 出方向(上)
带你读《企业级云原生白皮书项目实战》——3.3.2 出方向(上)
|
弹性计算 Cloud Native Perl
带你读《企业级云原生白皮书项目实战》——3.3.2 出方向(下)
带你读《企业级云原生白皮书项目实战》——3.3.2 出方向(下)
|
物联网 开发者 容器
《workshop专场--容器、消息&IoT专场-开发者动手实践营-容器、消息和IoT--物联网端到端全链路开发》电子版地址
workshop专场--容器、消息&IoT专场-开发者动手实践营-容器、消息和IoT--物联网端到端全链路开发
112 0
《workshop专场--容器、消息&IoT专场-开发者动手实践营-容器、消息和IoT--物联网端到端全链路开发》电子版地址
|
Kubernetes 监控 Dubbo
k8s容器云架构之dubbo微服务—全链路监控安装
官方地址:https://github.com/pinpoint-apm/pinpoint-docker 下载这两个文件并修改多余的服务具体修改配置细节参考如下文档即可。
473 1
|
云安全 供应链 安全
[10.14 Workshop] 容器 DevSecOps 实践
DevOps的价值已经在软件开发企业间形成了共识,尤其在云原生时代,容器化架构与 DevOps 结合在一起,极大提升了企业研发效率。然而在快速迭代的背后,如果没有一个可信的软件供应链,很可能将安全风险引入生产环境,造成巨大的损失。本文将基于 ACR EE 的云原生应用交付链实践,介绍如何将安全内置在 DevOps 的流程,将流水线升级为 DevSecOps ,保障端到端的容器业务安全。
225 0
[10.14 Workshop] 容器 DevSecOps 实践
|
云安全 供应链 安全
[10.14 Workshop] 容器 DevSecOps 全链路体验
DevOps的价值已经在软件开发企业间形成了共识,尤其在云原生时代,容器化架构与 DevOps 结合在一起,极大提升了企业研发效率。然而在快速迭代的背后,如果没有一个可信的软件供应链,很可能将安全风险引入生产环境,造成巨大的损失。本文将基于 ACR EE 的云原生应用交付链实践,介绍如何将安全内置在 DevOps 的流程,将流水线升级为 DevSecOps ,保障端到端的容器业务安全。
545 0
[10.14 Workshop] 容器 DevSecOps 全链路体验
|
云安全 供应链 安全
[10.14 Workshop] 容器 DevSecOps 实践
DevOps的价值已经在软件开发企业间形成了共识,尤其在云原生时代,容器化架构与 DevOps 结合在一起,极大提升了企业研发效率。然而在快速迭代的背后,如果没有一个可信的软件供应链,很可能将安全风险引入生产环境,造成巨大的损失。本文将基于 ACR EE 的云原生应用交付链实践,介绍如何将安全内置在 DevOps 的流程,将流水线升级为 DevSecOps ,保障端到端的容器业务安全。
332 0
[10.14 Workshop] 容器 DevSecOps 实践