<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>服务器安全维护工作室 &#187; 阿里云运维部署工具AppDeploy最佳实践</title>
	<atom:link href="https://www.fuwuqiok.com/tag/%e9%98%bf%e9%87%8c%e4%ba%91%e8%bf%90%e7%bb%b4%e9%83%a8%e7%bd%b2%e5%b7%a5%e5%85%b7appdeploy%e6%9c%80%e4%bd%b3%e5%ae%9e%e8%b7%b5/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.fuwuqiok.com</link>
	<description></description>
	<lastBuildDate>Sun, 01 Mar 2020 07:28:40 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.2.26</generator>
	<item>
		<title>阿里云运维部署工具AppDeploy最佳实践</title>
		<link>https://www.fuwuqiok.com/%e9%98%bf%e9%87%8c%e4%ba%91%e8%bf%90%e7%bb%b4%e9%83%a8%e7%bd%b2%e5%b7%a5%e5%85%b7appdeploy%e6%9c%80%e4%bd%b3%e5%ae%9e%e8%b7%b5/</link>
		<comments>https://www.fuwuqiok.com/%e9%98%bf%e9%87%8c%e4%ba%91%e8%bf%90%e7%bb%b4%e9%83%a8%e7%bd%b2%e5%b7%a5%e5%85%b7appdeploy%e6%9c%80%e4%bd%b3%e5%ae%9e%e8%b7%b5/#comments</comments>
		<pubDate>Sun, 10 Jan 2016 12:57:36 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[服务器迁移]]></category>
		<category><![CDATA[网站代维]]></category>
		<category><![CDATA[服务器基础环境搭建]]></category>
		<category><![CDATA[阿里云代维]]></category>
		<category><![CDATA[阿里云运维部署工具AppDeploy最佳实践]]></category>

		<guid isPermaLink="false">https://www.fuwuqiok.com/?p=2847</guid>
		<description><![CDATA[<p>阿里云 AppDeploy版是一个通过SSH实现的流式命令行工具，可用于完成应用部署和远程运维管理，其工作于p [&#8230;]</p>
<p><a rel="nofollow" href="https://www.fuwuqiok.com/%e9%98%bf%e9%87%8c%e4%ba%91%e8%bf%90%e7%bb%b4%e9%83%a8%e7%bd%b2%e5%b7%a5%e5%85%b7appdeploy%e6%9c%80%e4%bd%b3%e5%ae%9e%e8%b7%b5/">阿里云运维部署工具AppDeploy最佳实践</a>，首发于<a rel="nofollow" href="https://www.fuwuqiok.com">服务器安全维护工作室</a>。</p>
]]></description>
				<content:encoded><![CDATA[<div class="aly-article-con">
<p>阿里云 AppDeploy版是一个通过SSH实现的流式命令行工具，可用于完成应用部署和远程运维管理，其工作于python平台上，具有良好的可移植性；AppDeploy将本地应用软件上传到远端服务器，并执行用户预定义的产品部署命令。</p>
<p>工具当前免费下载使用，地址：<br />
<a href="http://market.aliyun.com/products/53690006/cmgj000331.html">http://market.aliyun.com/products/53690006/cmgj000331.html</a><br />
<a href="http://market.aliyun.com/products/53690006/cmgj000321.html">http://market.aliyun.com/products/53690006/cmgj000321.html</a></p>
<p>本文通过三个使用场景介绍AppDeploy：</p>
<p>1. 高效运维管理命令：<br />
1）实时监控服务器状态<br />
执行命令：$ adep check_status 将得到服务器的具体信息，包括ip、route、dns、resolve、iptables、mount、disk、load等；</p>
<p>::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::0</p>
<p>也可以在命令后面加具体参数查看部分信息，例如：<br />
当前支持：ip、route、dns、resolve、iptables、mount、disk、load；<br />
$ adep check_status:resolve</p>
<p>::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::1</p>
<p>$ adep check_status:disk</p>
<p>::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::2</p>
<p>2）实时监控服务器带宽<br />
在命令行执行 $ adepcheck_bandwidth 将会得到下面动态数据：</p>
<p>::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::3</p>
<p>其中红框内的数据分别为：<br />
提示按”e”字母退出监控状态：此处注意输入格式；<br />
服务器流入带宽实时数据（动态显示）：分别显示KB/s 和Mb/s两中常见数据格式；<br />
服务器流出带宽实时数据（动态显示）：分别显示KB/s 和Mb/s两中常见数据格式；</p>
<p>3）文件的上传下载：<br />
通过命令行类似shell命令的方式实现：<br />
具体操作的哪些服务器、用户名、密码信息由appdeploy.py文件定义；</p>
<p>文件上传命令格式：$ adep put:localfile,remoteFolder<br />
“put”、”:”、”localFile”、”,”、”remoteFolder”之间都没有空格；<br />
LocalFile：本地上传文件路径及名字，RemoteFolder：上传到服务器的具体目录；</p>
<p>文件下载命令格式：$ adep get:remoteFile,localFolder<br />
”get”、”:”、”remoteFile”、”,”、”localFolder”之间都没有空格；<br />
RemoteFile：从服务器上下载的文件名，localFolder：下载文件本地存放目录；<br />
例如：</p>
<p>::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::4</p>
<p>4）远程命令执行：<br />
通过命令行类似shell命令的方式实现：<br />
具体操作的哪些服务器、用户名、密码信息由appdeploy.py文件定义；</p>
<p>命令远程执行格式：$ adep run:shellCommand<br />
“run”、”:”、”shellCommand”之间都没有空格；<br />
ShellCommand：指远端执行的命令，有空格时要用引号引起来；</p>
<p>::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::5</p>
<p>5）一键更新服务器源<br />
命令行输入 $ adep update_source<br />
可以更新服务器端的源配置，支持Ubuntu、Centos、Redhat、Opensuse、Debian等系统的多个版本源更新功能；</p>
<p>::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::6</p>
<p>2. 一键部署Web服务器之Mysql + Nginx + PHP<br />
1）在appdeploy.py中输入以下定义<br />
def runtime():<br />
componets={“nginx” : “1.4.4″,<br />
“php” : “5.6.11″,<br />
“mysql” : “5.6.26″<br />
}<br />
install_runtime(componets)</p>
<p>2）在命令行执行下面命令，由于全部为源码安装，安装会占用相对较长时间。<br />
$ adep runtime</p>
<p>3）应用部署上线：上传您的PHP项目<br />
下面代码表示将本地PHP项目上传到服务器：/aliyun/www/phpwind目录；<br />
def deploy_php():<br />
put(“./php/*”, “/aliyun/www/phpwind/”)<br />
执行： $ adep deploy_php</p>
<p>4）检验应用部署效果</p>
<p>::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::7</p>
<p>3. 一键部署Web服务器之JDK + Mysql + Nginx + Tomcat<br />
1）在appdeploy.py中输入以下定义<br />
def runtime():<br />
componets={ “jdk” : “1.8.0″,<br />
“nginx” : “1.4.4″,<br />
“tomcat” : “7.0.63″,<br />
“mysql” : “5.6.26″<br />
}<br />
install_runtime(componets)</p>
<p>2）在命令行执行下面命令，由于全部为源码安装，会占用相对较长时间。<br />
$ adep runtime</p>
<p>3）应用部署：上传您的java项目<br />
下面任务会将本地java项目编译、打包、上传到服务器（基于Maven，appdeploy会自动检测您的maven程序是否安装，若没有安装，则会自动安装），最后上传到服务器的/aliyun/server/tomcat/webapps目录；<br />
def pack_deploy():<br />
componets={“plugin”: “maven”,<br />
“project_dir” : “./java/myFirstWebApp”,<br />
“web_dir” : “/aliyun/server/tomcat/webapps”<br />
}<br />
package(componets)<br />
deploy(componets)<br />
执行： $ adep pack_deploy</p>
<p>4）检验应用部署效果</p>
<p>::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::8</p>
</div>
<div class="aly-article-next">
<div></div>
</div>
<p><a rel="nofollow" href="https://www.fuwuqiok.com/%e9%98%bf%e9%87%8c%e4%ba%91%e8%bf%90%e7%bb%b4%e9%83%a8%e7%bd%b2%e5%b7%a5%e5%85%b7appdeploy%e6%9c%80%e4%bd%b3%e5%ae%9e%e8%b7%b5/">阿里云运维部署工具AppDeploy最佳实践</a>，首发于<a rel="nofollow" href="https://www.fuwuqiok.com">服务器安全维护工作室</a>。</p>
]]></content:encoded>
			<wfw:commentRss>https://www.fuwuqiok.com/%e9%98%bf%e9%87%8c%e4%ba%91%e8%bf%90%e7%bb%b4%e9%83%a8%e7%bd%b2%e5%b7%a5%e5%85%b7appdeploy%e6%9c%80%e4%bd%b3%e5%ae%9e%e8%b7%b5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
