📋 部署前准备

在开始之前,请确保您的环境满足以下基本要求:

  • Node.js: 版本需要 >= 16.x 且 < 18.x。您可以使用 node -v 命令检查版本。
  • 包管理工具: 推荐使用 yarnpnpm。本教程以 yarn 为例。
  • Git: 用于克隆项目代码。

🚀 方式一:使用 PM2 部署(适合有 Node.js 环境的服务器)

PM2 是一个强大的进程管理器,能让 Node.js 应用在后台长期运行,适合在生产环境使用。

操作步骤:

  1. 克隆项目并进入目录

    1
    2
    git clone https://github.com/nicejade/markdown-online-editor.git
    cd markdown-online-editor
  2. 安装项目依赖

    1
    yarn
  3. 全局安装 PM2

    1
    2
    yarn global add pm2
    # 或者使用 npm: npm install pm2 -g
  4. 构建生产环境代码
    此命令会生成一个 dist 目录,里面是待部署的静态文件。

    1
    yarn build
  5. 启动服务
    项目根目录下已经包含了 ecosystem.config.js 配置文件,可以直接使用 PM2 启动:

    1
    yarn release

    或者,您也可以手动进入 dist 目录,用 http-server 启动:

    1
    2
    cd dist
    npx pm2 start "npx http-server -p 8866" --name "markdown-editor"

    访问地址:打开浏览器,访问 http://您的服务器IP:8866 即可。


🐳 方式二:使用 Docker 部署(最推荐的快速方案)

如果您熟悉容器化技术,这是最便捷的方式,无需在主机上安装 Node.js 环境。

1. 使用 Docker Run 命令

项目作者已在 Docker Hub 提供了官方镜像,可以直接拉取运行。

1
2
3
4
5
# 将 [Your-Specified-Port] 替换为您想要映射的端口,如 8866
docker run -d -p [Your-Specified-Port]:80 nicejade/markdown-online-editor:latest

# 示例:将主机的 8866 端口映射到容器的 80 端口
docker run -d -p 8866:80 nicejade/markdown-online-editor:latest

访问地址http://您的服务器IP:8866

2. 使用 Docker Compose(便于管理)

创建一个 docker-compose.yml 文件,内容如下:

1
2
3
4
5
6
7
version: '3'
services:
markdown-editor:
image: nicejade/markdown-online-editor:latest
ports:
- '8866:80' # 左侧主机端口可自行修改
restart: always # 自动重启

然后在文件所在目录执行以下命令启动:

1
docker-compose up -d

☁️ 方式三:零服务器部署(Cloudflare Pages / GitHub Pages)

如果您没有自己的服务器,或者想快速部署一个公网可访问的站点,可以使用此方式。

部署到 Cloudflare Pages(推荐)

  1. Fork 仓库:在 GitHub 上 Fork 此项目到您的账号下。

  2. 连接 Cloudflare

    • 登录 Cloudflare 控制台,进入 Workers 和 Pages -> Pages
    • 点击 连接 Git,选择您刚才 Fork 的仓库。
  3. 配置构建参数(这是关键步骤):

    • 框架预设:选择 “无”

    • 构建命令

      1
      yarn install && yarn build
    • 构建输出目录

      1
      dist
  4. 添加环境变量(在”环境变量”处添加,生产/预览环境都要):

    • NODE_VERSION = 18
    • YARN_NODE_LINKER = node-modules
    • YARN_ENABLE_IMMUTABLE_INSTALLS = false
    • NODE_OPTIONS = --openssl-legacy-provider
  5. 保存并部署:点击”保存并部署”,Cloudflare 会自动开始构建,完成后会提供一个 .pages.dev 域名,您也可以绑定自己的域名。

部署到 GitHub Pages

您也可以将构建好的 dist 目录下的所有文件,推送到您仓库的 gh-pages 分支,或者使用 GitHub Actions 自动化部署。


📝 部署后的配置与使用

部署成功后,您就可以访问并使用 Arya 编辑器了。它支持多种编辑模式:

  • 所见即所得⌘-⇧-M (Mac) / Ctrl-⇧-M (Win)
  • 即时渲染⌘-⌥-8 / Ctrl-Alt-8
  • 分屏渲染⌘-⌥-9 / Ctrl-Alt-9

PPT 预览功能:在编辑器设置中可开启 PPT 模式,使用 --- 分隔水平幻灯片,-- 分隔垂直幻灯片。


🛠️ 常见问题与维护

  • 如何更新部署
    • PM2 方式:重新 git pull 拉取最新代码,然后依次执行 yarnyarn build,最后 pm2 restart markdown-editor 重启服务。
    • Docker 方式docker pull nicejade/markdown-online-editor:latest 拉取新镜像,然后删除旧容器,用相同命令重新运行。
    • Cloudflare Pages:推送代码到 GitHub 仓库会自动触发重新构建部署。
  • 数据持久化:编辑器的内容默认保存在浏览器本地存储中,清除浏览器缓存会导致数据丢失。
  • 端口冲突:如果 8866 端口被占用,可以在启动命令或 docker-compose.yml 中修改映射到其他端口。

以上几种方式覆盖了从个人使用到生产环境部署的常见场景,您可以根据自己的技术栈和需求灵活选择。如果在部署过程中遇到具体问题,欢迎查阅项目 GitHub Issues 或提交新问题。