Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux 服务器部署问题 #91

Closed
shawalarik opened this issue Mar 25, 2022 · 4 comments
Closed

Linux 服务器部署问题 #91

shawalarik opened this issue Mar 25, 2022 · 4 comments

Comments

@shawalarik
Copy link

请问下大佬,有这关于nodepress部署到linux服务器上的教程吗?第三方也行。

@surmon-china
Copy link
Owner

我假设你想问的是: “如何把 NodePress 程序在 Linux 上以生产模式成功运行起来?”

  1. Clone 项目至你生产机的某目录,并使用 yarn 安装依赖,装完后使用 yarn build 构建应用
  2. 在你的生产机安装 MongoDB 以及 Redis,并确保两者处于 running 状态
    • 如果你是用的是云数据库,则不需要安装 MongoDB
  3. 先查阅 PM2 的文档,理解 PM2 的工作机理和使用姿势
  4. 在项目根目录建立配置文件 ecosystem.config.js,并在根目录执行 pm2 start 启动应用

ecosystem.config.js example:

module.exports = {
  apps: [
    {
      name: 'nodepress',
      watch: ['dist'],
      script: 'dist/main.js',
      instances: 'max',
      exec_mode: 'cluster',
      node_args: [],
      max_memory_restart: '268M',
      args: [
        '--auth_data=XXX',
        '--auth_key=XXX',
        '--auth_default_password=XXX',
        // ...
      ],
      log_date_format: 'YYYY-MM-DD HH:mm Z',
      error_file: '/var/wwwlogs/nodepress/error.log',
      out_file: '/var/wwwlogs/nodepress/out.log',
      env: {
        NODE_ENV: 'production',
      },
    },
  ],
}

@surmon-china surmon-china pinned this issue Mar 25, 2022
@shawalarik
Copy link
Author

谢谢,已解决。

@yiliang114
Copy link

https://api.surmon.me/ api 响应好快,求问下作者是直接部署的机器是什么配置的? 或者是否是部在 serverless 上?

@surmon-china
Copy link
Owner

https://api.surmon.me/ api 响应好快,求问下作者是直接部署的机器是什么配置的? 或者是否是部在 serverless 上?

serverless 仅适合无状态应用部署,需要将任何涉及状态的服务抽离至独立的云服务,如 Reids 需要你有 HTTP 化的接口才能高效运行,MongoDB 同理;所以我的服务仅部署在 HK 区域的 Linux 单机服务器,你感受到 “快”,可能仅仅是地理位置的加持。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants