首页 > 知识库 > 正文

阿里云运维部署工具AppDeploy最佳实践(1)
2016-02-20 19:33:56   来源: 阿里云 运维帮    评论:0 点击:

阿里云AppDeploy版是一个通过SSH实现的流式命令行工具,可用于完成应用部署和远程运维管理,其工作于python平台上,具有良好的可移植性;AppDeploy将本地应用软件上传到远端服务器,并执行用户预定义的产品部署命令。本文通过三个使用场景介绍AppDeploy,供大家参考!

4.远程命令执行

通过命令行类似shell命令的方式实现:

具体操作的哪些服务器、用户名、密码信息由appdeploy.py文件定义。

命令远程执行格式:

  1. return (1xx | 2xx | 4xx | 5xx) ["text"];  
  2. $ adep run:shellCommand 

◆“run”、”:”、”shellCommand”之间都没有空格。

◆ShellCommand:指远端执行的命令,有空格时要用引号引起来。

\

5.一键更新服务器源

命令行输入:

  1. $ adep update_source 

可以更新服务器端的源配置,支持Ubuntu、Centos、Redhat、Opensuse、Debian等系统的多个版本源更新功能。

\

二、一键部署Web服务器之Mysql + Nginx + PHP

1.在appdeploy.py中输入以下定义

  1. def runtime():  
  2. componets={“nginx” : “1.4.4″,  
  3. “php” : “5.6.11″,  
  4. “mysql” : “5.6.26″  
  5.  
  6. install_runtime(componets) 

2.在命令行执行下面命令,由于全部为源码安装,安装会占用相对较长时间。

  1. $ adep runtime 

3.应用部署上线:上传您的PHP项目

下面代码表示将本地PHP项目上传到服务器:/aliyun/www/phpwind目录。

  1. def deploy_php():  
  2. put(“./php/*”, “/aliyun/www/phpwind/”) 

执行:

  1. $ adep deploy_php 

4.检验应用部署效果

\

三、一键部署Web服务器之JDK + Mysql + Nginx + Tomcat

1.在appdeploy.py中输入以下定义:

  1. def runtime():  
  2. componets={ “jdk” : “1.8.0″,  
  3. “nginx” : “1.4.4″,  
  4. “tomcat” : “7.0.63″,  
  5. “mysql” : “5.6.26″  
  6.  
  7. install_runtime(componets) 

2.在命令行执行下面命令,由于全部为源码安装,会占用相对较长时间。

  1. $ adep runtime 

3.应用部署:上传您的java项目

下面任务会将本地java项目编译、打包、上传到服务器(基于Maven,appdeploy会自动检测您的maven程序是否安装,若没有安装,则会自动安装),最后上传到服务器的/aliyun/server/tomcat/webapps目录。

  1. def pack_deploy():  
  2. componets={“plugin”: “maven”,  
  3. “project_dir” : “./java/myFirstWebApp”,  
  4. “web_dir” : “/aliyun/server/tomcat/webapps”  
  5.  
  6. package(componets)  
  7. deploy(componets) 

执行:

  1. $ adep pack_deploy 

4.检验应用部署效果

\

【编辑推荐】

  1. 数据运维对于运维具有哪些重要意义
  2. Linux恶意软件检测工具LMD Tool介绍
  3. 微软应用开发工具更新 无需编程就能创建Windows 10应用
  4. 功能强大的系统工具Sysdig命令实例介绍
  5. 面向高性能IT的精益运维体系初探
【责任编辑:火凤凰 TEL:(010)68476606】

相关热词搜索:AppDeploy 运维 工具

上一篇:面向高性能IT的精益运维体系初探(1)
下一篇:阿里云运维部署工具AppDeploy UI界面上线(1)

分享到: 收藏