【问题标题】:Sailsjs - How to package sails applicationSailsjs - 如何打包 Sails 应用程序
【发布时间】:2017-11-26 12:54:36
【问题描述】:

我正在开发一个 Sails 应用程序。

目前,要移动到另一台服务器。

我必须经过 3 个步骤:

Step1:查看源代码。

Step2:运行npm install下载依赖

Step3:通过cmd sails lift --prod部署sails app

有什么方法可以将 .zip 推送到服务器并运行 cmd deploy?

我的目的是:

第 1 步:全部压缩到 1 个文件夹

第 2 步:上传并部署

无需安装依赖手册

喜欢java分发的方式> 建个war文件放到tomcat中

或者 Angular CLI 全部编译到dist 文件夹

谢谢

【问题讨论】:

    标签: node.js npm package sails.js


    【解决方案1】:

    您可以利用 Jenkins 管道和 shell 脚本来实现它。

    1. 创建一个詹金斯管道
    2. 构建一个 zip 文件并将其推送到某个存储空间。 (亚马逊 S3?)
    3. 执行 shell 脚本以 ssh 进入生产服务器并执行另一个 shell 脚本,该脚本从 S3 下载最新版本,安装依赖项,然后启动应用程序。

    Jenkins 文件示例:

        pipeline {
    
            agent any
    
        stages {
            stage('Build') {
                steps {
                    checkout scm
                    echo 'Zipping..'
                    sh 'echo "My-app-`date +"%Y-%m-%dT%H-%M-%S"`.zip" >> buildName.txt'
                    sh 'if [ -d .git ]; then echo "Removing git folder"; rm -r .git/ ; fi;'
                    sh 'zip -r `cat buildName.txt` .'
                    archiveArtifacts artifacts: '*.zip'
                }
            }
            stage('Test') {
                steps {
                    echo 'test..'
                }
            }
            stage('Upload') {
                steps {
                    echo 'uploading..'
                    sh 's3cmd put `cat buildName.txt` s3://my-app-builds'
                }
            }
            stage('Deploy') {
                steps {
                    echo 'Deploying....'
                    sh './deploy_to_production.sh'
                }
            }
        }
        }
    

    否则,您可以将应用程序 dockerize。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多