loading
0.06D
V2EX  ›  Node.js

现在 node.js 服务器部署复杂吗?

  •  
  •   loading · Jan 8, 2017 via Android · 8347 views
    This topic created in 3439 days ago, the information mentioned may be changed or developed.
    能不能像采用打包 app 那样,打一个包放到一台未安装 node 的服务器上运行呢?

    这样 node.js 部署也就能像 go 那样轻松了。
    Supplement 1  ·  Jan 8, 2017
    如果目标服务器属于局域网, docker 似乎很麻烦?
    35 replies    2017-02-20 18:50:20 +08:00
    xjp
        1
    xjp  
       Jan 8, 2017 via iPhone
    不复杂 不能
    hxtheone
        2
    hxtheone  
       Jan 8, 2017
    完全没有 node 环境的话, 扔 docker 里?
    xream
        3
    xream  
       Jan 8, 2017
    @xjp 能啊...有好几个方案都是打包成二进制的
    xjp
        4
    xjp  
       Jan 8, 2017 via iPhone
    @xream nw.js 和 election ? 这俩是客户端解决方案 服务端目前有二进制打包?
    xream
        5
    xream  
       Jan 8, 2017
    @xjp jxcore nexe 这种
    xjp
        6
    xjp  
       Jan 8, 2017 via iPhone
    @xream 学习了 我研究一下
    fuxpro
        7
    fuxpro  
       Jan 8, 2017
    Node.js 解决方案和开发模式,注定无法使用传统的二进制打包方案,有很多人尝试,但是结果都无法满足要求,我自己也尝试过很多种可能的方案,最终的结论就是可靠性很低,成本太大,局限性太多。放弃
    largepuma
        8
    largepuma  
       Jan 8, 2017 via Android
    业绩推荐部署方式: docker
    smallpath
        9
    smallpath  
       Jan 8, 2017
    ...docker
    stackboom
        10
    stackboom  
       Jan 8, 2017
    docker +1
    mosliu
        11
    mosliu  
       Jan 8, 2017
    docker+1
    bdbai
        12
    bdbai  
       Jan 8, 2017 via iPhone
    @fuxpro Python 、 PHP 同理
    所以 Docker 大法吼啊。
    xjp
        13
    xjp  
       Jan 8, 2017 via iPhone
    写个 helloworld 试了一下 nexe 他把 nodejs 源码下载到本地重新编译了一遍 最终生成 2.5G 大的一个 nodejs 依赖文件夹 和一个 30+M 的二进制主文件 根本不实用
    weaming
        14
    weaming  
       Jan 8, 2017
    @xjp 666
    Srar
        15
    Srar  
       Jan 8, 2017
    @xjp 我使用 nexe 默认方式编译 依赖有"async": "^1.5.0","body-parser": "^1.14.1","express": "^4.13.3","express3-handlebars": "^0.5.2","js-sha512": "^0.2.2", "morgan": "^1.6.1", "mysql": "^2.9.0","node-rsa": "^0.2.26","node-uuid": "^1.4.7" 最终出来的大小只有 21M, 如果用 UPX 压下还能更小...

    Warder
        16
    Warder  
       Jan 8, 2017 via Android
    看来还是 docker 好,开发调试都方便
    vcfvct
        17
    vcfvct  
       Jan 8, 2017 via Android   ❤️ 1
    可以试试 Jenkins+aws ec2+aws cloudformation+puppet+aws code deploy 来实现 code 和运行 instance 的全部自动化。
    16500682
        18
    16500682  
       Jan 8, 2017 via iPhone
    docker+++
    dibage
        19
    dibage  
       Jan 8, 2017
    其实服务器上装个 nodejs 好像挺简单的。。(如果你使用 ubuntu 的话,直接下载二进制文件,解压目录,设置 env 即可

    所以打包,你可以把 nodejs 一起打包了~ 然后初始化的时候安装上即可
    jiangzhuo
        20
    jiangzhuo  
       Jan 8, 2017
    不复杂,能打包
    jinhan13789991
        21
    jinhan13789991  
       Jan 8, 2017 via Android
    Docker 一键转移
    3l5e0Ddo5BX07ghT
        22
    3l5e0Ddo5BX07ghT  
       Jan 8, 2017
    only0jac
        23
    only0jac  
       Jan 8, 2017
    那为什么不直接 golang
    majunbo
        24
    majunbo  
       Jan 8, 2017
    我刚刚弄了个 CentOS 5 ,还不知道成功了没有,可以输出 helloword 了,
    感觉有些麻烦:
    1 、升级 Python ->2.7
    2 、安装 nodejs
    http://blog.csdn.net/veizz/article/details/7237185
    binux
        25
    binux  
       Jan 8, 2017 via Android
    打包一个 node ,一个带有依赖的 app , over 。
    fuxpro
        26
    fuxpro  
       Jan 8, 2017
    @bdbai Docker 这东西在一定程度是不错的,不过我不喜欢引入中间层,除非实在没有办法,否则我更希望是原生的,直接的
    gyteng
        27
    gyteng  
       Jan 8, 2017 via Android
    能,如果你依赖的 npm 模块不需要编译的话甚至可以直接拷贝过去运行
    93html
        28
    93html  
       Jan 9, 2017
    docker++++
    panlilu
        29
    panlilu  
       Jan 9, 2017
    目标服务器属于局域网 docker 也没啥问题吧。。
    xdream86
        30
    xdream86  
       Jan 9, 2017
    我用 shipit, 只需要一个命令部署就好了
    loading
        31
    loading  
    OP
       Jan 9, 2017 via Android
    @panlilu 装 docker ,拉镜像都是问题。
    panlilu
        32
    panlilu  
       Jan 9, 2017
    @loading 内网放一个 docker registry 然后镜像推到那上面其他机器从那个上面拉就可以。
    至于装 docker ,不能做系统的时候就装好么?
    loading
        33
    loading  
    OP
       Jan 9, 2017 via Android
    @panlilu 真麻烦……
    einsqing
        34
    einsqing  
       Jan 17, 2017
    推荐使用 pm2 管理
    wobuhuicode
        35
    wobuhuicode  
       Feb 20, 2017
    node 的部署还算可以,加上数据库, nginx 之类的,其实不是很复杂。推荐: http://www.jianshu.com/p/df7f017d88de
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5512 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 592ms · UTC 08:59 · PVG 16:59 · LAX 01:59 · JFK 04:59
    ♥ Do have faith in what you're doing.