开发者社区 问答 正文

云效使用指南:持续交付:构建:构建环境



本文描述RDC使用的构建环境。

基础环境


所有构建环境基于Ubuntu系统。
执行构建命令的用户是admin,拥有sudo权限。所以您可以使用sudo apt-get update && sudo apt-get install -y xxx 来安装需要的软件。
已经预装的软件:

  1. g++ 4.9.2
  2. gcc 4.9.2
  3. make 4.0
  4. curl
  5. wget
  6. unzip
  7. python 3.5
  8. git 1.9


各个语言的环境


通过设置 release文件中的code.language的值,您可以使用相应语言、版本的构建环境。

Java环境


基于基础环境,并安装了:
  1. maven 3.5
  2. gradle 4.1

提供三个JDK版本:
  1. oracle-jdk1.7 (code.language=oracle-jdk1.7)
  2. oracle-jdk1.8 (code.language=oracle-jdk1.8)
  3. oracle-jdk1.9 (code.language=oracle-jdk1.9)


NodeJS环境


基于基础环境,并安装了:
  1. yarn 0.27.5

提供三个nodejs版本:
  1. node6.11.3 npm3.10.10 (code.language=node6.x)
  2. node7.10.0 npm4.20 (code.language=node7.x)
  3. node8.4.0 npm5.3.0 (code.language=node8.x)

注意 :上述三个node及npm版本会随着相应的node大版本的更新而更新,但code.language的取值不变。比如您配置了code.language=node6.x,目前实际使用的是node6.11.3,如果node6的版本升级到了6.12.0,则您实际用到的可能就是6.12.0。

PHP环境


基于基础环境,并安装了:
  1. composer 1.0

提供两个php版本:
  1. php5.6 phpunit 5.7(code.language=php5.6)
  2. php7.0 phpunit 6.3(code.language=php7.0)


其它


如果您的构建对环境没有特殊需求,可以使用code.language=scripts。此时会使用基础环境。

展开
收起
行者武松 2017-10-23 14:24:34 2098 分享 版权
阿里云 AI 助理回答

在阿里云上,如果您希望复现或搭建类似您描述的构建环境,可以采用以下几种方式:

  1. 使用ECS(Elastic Compute Service):阿里云的ECS实例提供了多种操作系统选择,包括不同版本的Ubuntu系统。您可以根据需要选择合适的Ubuntu镜像创建一台或多台ECS实例。登录到ECS实例后,通过SSH或其他远程连接工具,以管理员(root)身份或者创建一个具有sudo权限的用户(如admin),然后执行诸如sudo apt-get update这样的命令来更新软件包列表并安装所需的软件包和依赖。

  2. 配置安全组规则:为了确保您的ECS实例能够访问互联网以下载软件包和依赖,记得在实例的安全组设置中开放必要的出站端口,如HTTP(80)和HTTPS(443)。

  3. 使用Docker容器化技术:如果希望构建环境更加隔离和可移植,可以在ECS实例上部署Docker,并基于Ubuntu镜像创建一个Docker容器作为构建环境。这样,您可以精确控制环境中的每一个组件,且易于迁移和复制。例如,可以通过编写Dockerfile来定义环境,其中包含FROM ubuntu作为基础镜像,以及RUN sudo apt-get update && sudo apt-get install -y ...等指令来安装所需的软件和配置。

  4. 使用Kubernetes服务(ACK, Alibaba Cloud Container Service for Kubernetes):对于更复杂的场景,比如需要集群化管理和自动伸缩的构建环境,可以使用阿里云的ACK服务。在ACK上,您可以创建基于Ubuntu的Pods,利用Docker镜像,并通过YAML文件定义部署、服务和服务账户等,实现高度自动化和可扩展的构建环境。

  5. 对象存储OSS(Object Storage Service):如果您的构建过程中涉及大量文件的存储或分发,可以考虑使用阿里云的对象存储OSS。OSS提供高可用、低成本、大规模的数据存储解决方案,适合存放构建输出物,如软件包、日志文件等。

  6. 代码托管与CI/CD:结合阿里云的Codeup(代码管理服务)或GitHub等代码托管平台,以及云效(Cloud DevOps)进行持续集成和持续部署,可以进一步自动化构建、测试和部署流程。在云效中,您可以配置构建任务,指定使用特定的Ubuntu环境,并执行相应的构建脚本。

综上所述,阿里云提供了从基础设施到应用层的一系列服务,帮助您灵活高效地搭建和管理基于Ubuntu系统的构建环境。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答