码迷,mamicode.com
首页 > 其他好文 > 详细

erlang热部署

时间:2014-10-24 20:23:43      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   ar   sp   文件   div   on   

以下流程参考rebar的wiki,亲测

rebar的版本一定要注意,高版本对于下面两个指令有bug

rebar generate-appups
rebar generate-upgrade

经过一个个版本的测试,2.2.0版本可用,但是这个版本的clean和compile指令不支持-r参数

例子:
用rebar建立工程,也可以用大神的rebar-creator脚本创建,我是用的后者,比较方便
我创建的工程是tcp_server

修改apps,你的app,src文件里面的vsn字段的版本号和rel/reltool.config里面的rel字段的版本号一致,测试写0.1
(是否可以不一致,不清楚,但是官方demo里面是一致的;并且作为版本管理来说,应该一致)

rebar compile;rebar compile;rebar generate -f;

将rel/tcp_server重命名为tcp_server_0.1


重新修改版本号为0.2,两个地方都要改。

重新编译:

rebar clean;rebar compile;rebar generate -f;
rebar generate-appups previous_release=tcp_server_0.1;
rebar generate-upgrade previous_release=tcp_server_0.1;

 

然后在你的rel目录看到一个tcp_server_0.2.tat.gz的压缩包了吧
我们把这个压缩包mv到tcp_server_0.1/release

cd tcp_server_0.1
./bin/tcp_server console进入erlang的shell
release_handler:which_releases().


看到的应该是0.1
然后解压0.2的包,安装进入

erl> release_handler:unpack_release("tcp_server_0.2").
erl> release_handler:install_release("0.2").
erl> release_handler:make_permanent("0.2").
erl> release_handler:which_releases().

 

erlang热部署

标签:style   blog   color   io   ar   sp   文件   div   on   

原文地址:http://www.cnblogs.com/ziyouchutuwenwu/p/4048930.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!