<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      使用scp2和ssh2在node環境打包發布

      // 1、項目根目錄新建deploy.js并添加配置,方式二選一
      // 2、package.json修改build配置: "build": "vue-cli-service build && node ./deploy"
      // 3、運行命令npm run build打包發布
      // *、使用私鑰時在根目錄新建文件xxx.private,啟用privateKey和passphrase
      
      const scpClient = require('scp2')
      const Client = require('ssh2').Client
      const conn = new Client()
      
      const server = {
        host: '8.8.8.8',
        port: '22',
        username: 'root',
        password: 'password',
        // privateKey: require("fs").readFileSync('xxx.private'),
        // passphrase: 'private_key_password',
        path: '/data/dist',
        command: 'rm -rf /data/dist/*'
      }
      
      // 方式一
      scpClient.scp(
        './dist/',
        {
          host: server.host,
          port: server.port,
          username: server.username,
          password: server.password,
          // privateKey: server.privateKey,
          // passphrase: server.passphrase,
          path: server.path
        },
        (err) => {
          if (err) {
            console.log('faild')
            throw err
          } else {
            console.log('success')
          }
        }
      )
      
      // 方式二
      conn.on('ready', () => {
        conn.exec(server.command, (err, stream) => {
          if (err) { throw err }
          stream.on('close', () => {
            scpClient.scp(
              './dist/',
              {
                host: server.host,
                port: server.port,
                username: server.username,
                password: server.password,
                // privateKey: server.privateKey,
                // passphrase: server.passphrase,
                path: server.path
              },
              (err) => {
                if (err) {
                  console.log('faild')
                  throw err
                } else {
                  console.log('success')
                }
              }
            )
            conn.end()
          }).on('data', (data) => {
            console.log('STDOUT: ' + data)
          })
          .stderr.on('data', (data) => {
            console.log('STDERR: ' + data)
          })
        })
      }).connect({
        host: server.host,
        port: server.port,
        username: server.username,
        password: server.password,
        // privateKey: server.privateKey,
        // passphrase: server.passphrase,
      })
       

       

      posted @ 2022-08-12 16:34  魷魚須須  閱讀(406)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 欧美乱妇狂野欧美在线视频| 国产啪视频免费观看视频| 99riav国产精品视频| 真人抽搐一进一出视频| 日韩精品一二区在线观看| 日韩一区二区三区亚洲一| 欧美日韩亚洲国产| 久久婷婷成人综合色综合| 熟女激情乱亚洲国产一区| 无码人妻一区二区三区在线视频| 国产亚洲精品第一综合另类无码无遮挡又大又爽又黄的视频 | 激情综合五月丁香亚洲| 国产精品视频午夜福利| 亚洲欧美日韩愉拍自拍美利坚| 久久大香萑太香蕉av黄软件 | 蜜桃传媒av免费观看麻豆| 亚洲第四色在线中文字幕| 四虎国产精品永久入口| 天天摸天天做天天爽水多| 午夜成人精品福利网站在线观看 | 最新亚洲av日韩av二区| 性男女做视频观看网站| 最近2019中文字幕大全第二页| 国产精品久久久久7777| 狠狠爱五月丁香亚洲综| 昌黎县| 色综合天天综合网国产人| 欧美国产日产一区二区| 精品少妇av蜜臀av| 国产精品户外野外| 99e久热只有精品8在线直播| 亚洲最大成人免费av| 久久综合色一综合色88| AV无码免费不卡在线观看| 色综合热无码热国产| 国产中文字幕一区二区| 国产精品ⅴ无码大片在线看 | 另类 专区 欧美 制服丝袜| 国内自拍av在线免费| 日韩成人福利视频在线观看| 日韩人妻少妇一区二区三区|