本篇将为大家介绍如何将应用导入到Choerodon猪齿鱼。Choerodon平台上导入应用有两个入口,第一个入口在应用管理页签内,是从gitlab/github导入应用,第二个入口在应用市场中,可以在其它平台的应用市场导出后再导入。
为什么要从外部代码管理平台导入应用
Choerodon平台最开始发布的版本中只有应用市场的导入功能,后来在版本迭代中,越来越多的用户开始搭建并使用了Choerodon平台,其中包含了很多其他软件公司。而且这些软件公司有一个共同点,在了解Choerodon平台之前,他们的日常开发,产品的迭代已经使用上了gitlab,所以他们的代码仓库都存在已有的gitlab上。
由于Choerodon平台与gitlab的高度耦合,Choerodon平台的组织、项目、用户等都和gitlab的组、用户等资源一一对应的。Choerodon的数据库中存了大量两者的中间关系表。所以Choerodon一般不建议直接将已有的gitlab迁移到Choerodon的gitlab,一方面,gitlab版本不一致,可能导致迁移失败;另一方面,中间会缺少很多关键数据,严重影响后续的其他功能。在Choerodon社区中也有很多用户自行写了脚本去迁移,或者直接迁移数据库,迁移的过程步骤很繁琐复杂,都或多或少出现了问题,出于此,Choerodon才开发了从gitlab或者github导入应用到Choerodon平台的功能。
在介绍应用导入方法之前,先简单介绍一下应用的代码仓库组成。
Choerodon代码仓库的主要组成
-
各种开发语言或者开发框架的基础代码
-
Chart文件夹:Choerodon持续交付中的应用部署用的是K8S(开源的容器集群管理系统),helm是K8S一个软件包管理工具,里面存放了大量的chart包,每个chart包可以定义各种应用部署所需要的K8S对象文件,Chart文件夹就是用来存放打包成chart包的文件。
-
DockerFile:用来打包应用到镜像中,容器化应用,在各种流行的系统中部署,例如linux,windows等。<