全部产品

部署

更新时间:2017-06-07 13:26:11   分享:   

阿里云持续交付平台CRP,可以将代码包/编译输出的包,自动化部署到阿里云ECS机器上。

1 使用场景说明

当您需要将您的代码包,自动化部署到ECS服务器时,您可以在持续交付平台CRP的持续发布线中增加部署的任务。当您运行该发布线时,CRP将自动将您的代码包 拷贝到您的服务器上,并且自动运行启动脚本/命令。帮助您自动化部署代码包。

2 第一步:发布线中增加部署任务

在项目列表中,点击您要配置持续发布线的项目,在左侧的菜单栏中点击图标工作流图标,进入持续发布线配置页面。

点击需要配置的持续发布线名称,进入工作流查看页面,点击右上角的编辑按钮,在右下角的任务列表处,点击“+”号,选择"部署”即可增加部署任务。

部署任务添加

部署时,CRP会按照目标机器的顺序,依次执行以下动作:将您的部署包拷贝到对应机器上->执行部署脚本->返回部署结果。 部署任务添加

3 第二步:选择手动部署

部署支持手动部署插件Ali部署插件

  1. 手动部署插件是一次性的部署配置,只能在当前部署任务中使用,不能重复使用;
  2. Ali部署插件是直接选择已经配置好的部署组,部署组可以在多个任务中重复使用;(部署组的增加可以查看 部署组

4 第三步:输入机器列表

目标机器指您需要发布的阿里云ECS机器,需要输入该机器的外网IP或$hostname,可输入多个IP,用逗号分隔;

默认机器端口为22,如果端口不是22,可以加端口号,举例如下: 10.100.1.100:2300,10.100.1.101

5 第四步:设置部署路径

部署路径是您的部署包需要拷贝到目标机器的目录(绝对路径),CRP会将部署包拷贝到该目录。

6 第五步:设置部署命令或部署脚本

Java、JavaScript等语言的部署,是需要在上传文件后,启动服务的,当您在部署过程中,需要执行一些脚本命令时,您可以在部署脚本中输入一些命令。也可以将这些命令组装好放在服务器的启动脚本中,那么CRP在执行部署时,会自动执行这些命令或是您指定的脚本,并且返回脚本执行的结果。

注意:CRP部署时都是将代码包打成了package.tgz包,所以您在部署时,需要先做解压的动作。如您还有疑问可以旺旺联系“crp技术支持”咨询。

PHP语言的命令行方式启动举例如下

    cd /home/www/;tar -xzf package.tgz;cd /home/www/apache/bin;sh restart.sh

Java语言的启动脚本举例如下

sh /home/admin/tomcat7/restart.sh 需要注意的是登录用户对部署脚本要有执行权限。

CRP的部署包是将用户的代码包或者指定路径下的文件包压缩成package.tgz包,所以部署执行时会将package.tgz拷贝到部署目录。

JAVA启动脚本示例

#!/bin/bash
APP_NAME=spring-mvc-showcase
TOMCAT_HOME=/home/admin/tomcat7
if [ -d "$TOMCAT_HOME"=0 ];
then echo "$TOMCAT_HOME not found"
exit 1
else
$TOMCAT_HOME/bin/shutdown.sh
echo "shutdown success"
fi
cd $TOMCAT_HOME/webapps
### rm root
if [ -d "$TOMCAT_HOME/webapps/ROOT" ];then
 rm -rf $TOMCAT_HOME/webapps/ROOT
fi
#### rm app
rm -rf $TOMCAT_HOME/webapps/$APP_NAME.war
rm -rf $TOMCAT_HOME/webapps/$APP_NAME
echo "delete package finish"
tar -xzf package.tgz
echo "tar success"
$TOMCAT_HOME/bin/startup.sh
echo "starup finish"    

7 第六步:设置登录用户(运行部署的用户)

登录用户是指您登录机器进行部署操作的账户名,比如admin等,CRP给您的机器进行部署时,需要您首先进行授权:

1.点击右侧的"机器授权",接着“点此”会自动将公钥拷贝到您的粘贴板。您也可以在项目设置-部署公钥中查看该项目的公钥。

2.然后,您使用登录用户的账号登录到目标机器上,修改~/.ssh/authorized_keys文件,加到该文件中即可。

为了保证安全性,每个项目都拥有独立的部署公钥。

本文导读目录
本文导读目录
以上内容是否对您有帮助?