zoukankan      html  css  js  c++  java
  • erlang热部署

    以下流程参考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().
  • 相关阅读:
    2019牛客暑期多校训练营(第三场)- LRU management
    2019牛客暑期多校训练营(第三场)- F Planting Trees
    HDU1392 Surround the Trees
    2019 Multi-University Training Contest 2
    3101 阶乘分解 (数学)
    Prime Distance POJ
    反素数ant HYSBZ
    B. Nirvana Codeforces Round #549 (Div. 2) (递归dfs)
    C. Queen Codeforces Round #549 (Div. 2) (搜索)
    Cow Relays POJ
  • 原文地址:https://www.cnblogs.com/ziyouchutuwenwu/p/4048930.html
Copyright © 2011-2022 走看看