对使用dokku感到困惑

问题描述

这是我第一次使用dokku部署服务器。 我有一个使用MySQL作为数据库的服务器上使用Nodejs的辅助项目,我想用dokku部署它,我去了文档,一切都很酷,但是如果你们可以,我不明白两件事,请回答我:)

Q-1-第一次部署服务器时,我想拥有一个包含数据的exisitng数据库,这导致即时通讯打算更改我当前的托管服务提供商,并且我已经在数据库中有了数据,

Q-1-在当前的生产服务器中,我建立了一个导出数据库并将其上传到cloudinary的功能,我使用了简单的mysqldump命令,,但是现在我打算使用dokku你们如何认为我可以做到,如果您想看看,这就是功能


function backupDB() {
  try {

    var stream = cloudinary.uploader.upload_stream(
      {
        folder: "db_backup",resource_type: "raw",use_filename: true,format: "sql",timestamp: Date.now(),},function (error,result) {
        if (error) logger.error(`upload to cloudinary error: ${error}`);
      }
    );

    // this just the mysqldump params,dont bother reading it
    let mysqlDumpData = [
      "-h",`${
        process.env.NODE_ENV == "production"
          ? process.env.MYSQL_HOST
          : "localhost"
      }`,"-u",`${
        process.env.NODE_ENV == "production" ? process.env.MYSQL_USER : "root"
      }`,];

    if (process.env.NODE_ENV == "production") {
      mysqlDumpData.push(
        `-p${
          process.env.NODE_ENV == "production" ? process.env.MYSQL_PASSWORD : ""
        }`
      );
      mysqlDumpData.push(
        `${
          process.env.NODE_ENV == "production" ? process.env.MYSQL_DB : "DBNAME"
        }`
      );
    } else {
      mysqlDumpData.push(
        `${
          process.env.NODE_ENV == "production" ? process.env.MYSQL_DB : "DBNAME"
        }`
      );
    }

   //  console.log(mysqlDumpData);
    var mysqldump = spawn("mysqldump",mysqlDumpData);

    logger.info("Running Database Backup...");
    mysqldump.stdout
      .pipe(stream)
      .on("finish",function () {
        logger.info(`Database is backed up successfully !`);
      })
      .on("error",function (err) {
        console.log(err);
      });
  } catch (err) {
    logger.error(`DB BACKUP ERROR: ${err}`);
  }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)