资讯动态

Wekan 在 Windows 上部署完全指南:原生 Bundle、Docker、WSL 与 VirtualBox 多方案详解

发布时间:2026/9/14 11:09:28 来源:尧图企业网站定制
Wekan 在 Windows 上部署完全指南原生 Bundle、Docker、WSL 与 VirtualBox 多方案详解【免费下载链接】wekanThe Open Source kanban, built with Meteor. GitHub issues/PRs are only for FLOSS Developers, not for support, support is at https://wekan.fi/commercial-support/ . PR source translation to imports/i18n/data/en.i18n.json, other translations at https://app.transifex.com/wekan/wekan项目地址: https://gitcode.com/GitHub_Trending/we/wekan本指南基于仓库 docs/Platforms/Propietary/OS/Windows/README.md 及其姊妹文档Offline.md、WSL.md系统梳理 Wekan 这一基于 Meteor 构建的开源看板在 Windows 环境下的全部可行部署路径。读者将掌握无虚拟化的原生 BundleWindows Node.js MongoDB部署、Docker 容器部署、Windows Subsystem for LinuxWSL方案、VirtualBox 虚拟机方案以及配套的start-wekan.bat关键环境变量调优、mongodump/mongorestore 备份恢复和 Caddy 反向代理 SSL/TLS 配置。方案总览与选型Windows 上的 Wekan 部署可以归纳为四种主流路径文档在 README.md 中按字母编号给出了完整对比方案核心方式特点与适用场景a) 原生 BundleWindows 原生 Node.js MongoDB直接运行bundle性能最高、内存占用最低无虚拟化开销适合单机正式使用b) Docker预构建镜像或源码构建容器环境隔离、升级方便官方推荐使用发布版本 tag 而非 latestc) WSLWindows 10/11 的 Linux 子系统内运行兼顾 Windows 桌面与 Linux 生态可跑 Snap 版d) VirtualBoxUbuntu 虚拟机 Snap离线分发友好可导出.ova镜像迁移注意文档明确将“在 Windows 上直接源码编译安装Install-Wekan-from-source-on-Windows.md”标注为OLD / DOES NOT WORK——在 Windows 上直接用 Meteor 构建会出错。因此推荐路径是先下载官方预构建的 Windows Bundle再通过start-wekan.bat启动这也是本文第一节的重点。原生 Bundle 部署最高性能、最低内存这是文档最推荐的方式没有 Docker、WSL 等虚拟化层Wekan 直接跑在 Windows 原生的 Node.js 和 MongoDB 上直接读写 Windows 文件系统因此拥有最高性能和最低 RAM 占用。1. 前置准备如果服务器上已有重要数据务必先备份Backup。安装 Windows 版 Node.jsLTS v12.x来自 nodejs.org。安装时勾选 Install additional tools会一并安装 Chocolatey 等辅助工具。以管理员身份打开cmd.exe用 Chocolatey 安装 MongoDBchoco install -y mongodb从 releases 站点下载最新的 Wekan Bundlewekan-x.xx.zip。解压wekan-x.xx.zip内部是一个名为bundle的目录。将仓库根目录的 start-wekan.bat 下载/复制到bundle目录。启动 Wekan 与 MongoDB 前按下文“环境变量”一节配置好ROOT_URL、PORT等参数。2. 启动步骤以管理员身份运行两个cmd.execd bundle start-wekan.batMongoDB 作为 Windows 服务启动/停止net start mongodb net stop mongodb3. start-wekan.bat 关键配置解读start-wekan.bat 是 Windows 部署的核心脚本仓库中的实际内容包含大量带注释的环境变量模板以下是必须关注的核心项SET ROOT_URLhttp://localhost SET PORT80 SET WRITABLE_PATH.. SET MONGO_URLmongodb://127.0.0.1:27017/wekan SET WITH_APItrueROOT_URL默认是http://localhost仅本机可访问。文档强调如果端口是 80必须把 ROOT_URL 改成http://YOUR-WEKAN-SERVER-IPv4-ADDRESS如http://192.168.0.100否则翻译、附件上传等功能无法正常工作。可参考 Settings 中关于ROOT_URL的说明Docker/Source/Bundle 用大写、下划线、无引号写法Snap 用单引号小写写法。PORTWekan Node.js 监听端口默认 80。若 80 被占用可改为 2000 等端口并同步修改 ROOT_URL例如http://192.168.0.100:2000。WRITABLE_PATH附件存储的根路径。默认..表示bundle的上级目录Wekan 会在其中创建files/attachments、files/avatars等目录。从 models/attachments.js 的源码可以确认存储路径的计算逻辑取process.env.WRITABLE_PATH || process.cwd()作为基础路径若基础路径以/files结尾Snap 场景则直接追加/attachments否则追加/files/attachments。MONGO_URL本地 MongoDB 连接串格式为mongodb://ip:port/database-name默认库名wekan。WITH_APItrue启用 Wekan API。注释明确指出若设为 false 禁用 API导出看板Export Board将不可用。4. MongoDB 维护备份、恢复与 CLI文档给出了与 MySQL 世界mysqldump类似的mongodump备份命令完整路径形如C:\Program Files\MongoDB\Server\4.2\bin\mongodumpC:\Program Files\MongoDB\Server\4.2\bin\mongodump会在当前目录生成dump子目录存放备份。恢复使用C:\Program Files\MongoDB\Server\4.2\bin\mongorestore连接 MongoDB CLIC:\Program Files\MongoDB\Server\4.2\bin\mongo进入 CLI 后常用操作一个 MongoDB 服务可承载多个数据库类似 MySQL 的CREATE DATABASEshow dbs -- 查看所有数据库 use wekan -- 切换到 wekan 数据库 show collections -- 列出 wekan 库中的集合表 db.users.find() -- 查看 users 集合内容 use testing -- 创建并切换到 testing 库 db.dropDatabase() -- 删除当前数据库 show dbs -- 再次确认 testing 已被删除 exit -- 退出 CLI重要告诫不要直接备份 Windows 上 MongoDB 的原始数据文件位于C:\ProgramData\MongoDB\data\db需在资源管理器中开启“显示隐藏文件/系统文件/文件扩展名”才能看到而应使用mongodump。此外仓库根目录的 start-wekan.bat 启动逻辑中还包含一段等待 MongoDB 就绪的重试循环默认超时WEKAN_DB_WAIT_TIMEOUT120秒它会在 MongoDB 未就绪时每 5 秒重试并打印升级提示——若升级后无法连接多半是旧版本 MongoDB 创建的数据文件无法被新版本打开需要用旧版本mongodump --archivewekan.archive --gzip备份、清空数据目录、再用新版本mongorestore --archivewekan.archive --gzip --drop恢复。脚本还自动检测 MongoDB 副本集rs0状态副本集就绪时设置USE_CHANGE_STREAMStrue并把METEOR_REACTIVITY_ORDER设为changeStreams,oplog,polling否则回退为polling轮询模式并显式SET DDP_TRANSPORTsockjsBundle 不携带 uWebSockets.jsuws 会被强制转为 sockjs。5. 添加用户部署完成后参考 Adding users 添加用户忘记密码时参考 Forgot Password。Docker 部署文档推荐 Docker 方案但有两条明确警示不要使用latesttag只使用发布版本 tag参见仓库 issue 3874 的相关讨论。不需要从源码构建时直接使用官方预构建镜像和仓库根目录的 docker-compose.ymldocker-compose up -d需要从源码构建时git clone https://github.com/wekan/wekan然后编辑 docker-compose.yml 并取消注释第 122 行wekan服务中的 build 段落文档指向原文件的 L132-L142当前仓库中对应wekan:服务定义附近#------------------------------------------------------------------------------------- # BUILD wekan-app DOCKER CONTAINER FROM SOURCE, if you uncomment these # and use commands: docker-compose up -d --build build: context: . dockerfile: Dockerfile args: - NODE_VERSION${NODE_VERSION} - METEOR_RELEASE${METEOR_RELEASE} - NPM_VERSION${NPM_VERSION} - ARCHITECTURE${ARCHITECTURE} - SRC_PATH${SRC_PATH} - METEOR_EDGE${METEOR_EDGE} - USE_EDGE${USE_EDGE} #-------------------------------------------------------------------------------------然后执行docker-compose up -d --buildDocker 环境出问题时可参考 Repair Docker。WSLWindows Subsystem for Linux方案基础安装在 WSL.md 中给出了 WSL 的现代安装方式wsl --install wsl --list --online wsl --install -d Ubuntu-22.04使用预构建 Bundle 运行无需源码构建在 WSL 中下载最新的wekan-VERSION.zip并解压后sudo apt update sudo apt install npm mongodb-server mongodb-clients sudo npm -g install n sudo n 12.16.1 sudo npm -g install npm然后编辑start-wekan.sh设置正确的端口、ROOT_URL以及指向 27017 端口的MONGO_URL并cd到可执行node main.js的 bundle 目录最后./start-wekan.sh更多硬件类参考可看 Raspberry Pi同为非 x86/无 Docker 环境的部署参考。源码开发模式快速重载若要从源码构建并加速启动、跳过部分构建产物、支持局域网设备测试可指定计算机 IPWITH_APItrue RICHER_CARD_COMMENT_EDITORfalse ROOT_URLhttp://192.168.0.200:4000 meteor --exclude-archs web.browser.legacy,web.cordova --port 4000WSL 中 GitHub 连接问题修复如果在 WSL 中git pull报ssh: Could not resolve hostname github.com: Name or service not known说明 DNS 解析异常。按 WSL.md 修复编辑/etc/wsl.conf[boot] systemdtrue [network] generateResolvConf false编辑/etc/resolv.conf加入可用的 nameserver例如 CloudFlare 的 1.1.1.1nameserver 1.1.1.1同时修改 Windows 网络设置只启用 IPv4关闭 IPv6DNS 设为1.1.1.1并开启 HTTPS 自动加密。WSL2 中运行 Wekan Snap 版在 WSL2 中启用 systemd参考 Ubuntu 官方 WSL systemd 教程后sudo snap install wekan --channellatest/candidate设置访问地址与端口替换为你的 Windows 计算机 IPsudo snap set wekan root-urlhttp://192.168.0.200 sudo snap set wekan port80然后用 Chromium/Edge/Firefox/Safari 等浏览器访问http://192.168.0.200。移动端可参考 PWA 创建桌面图标。如需 SSL/TLS可参考 Caddy 与 Settings 配置。VirtualBox 虚拟机方案最简单的方式是在 VirtualBox 中安装 Ubuntu文档示例为 Ubuntu 19.10 64bit再安装 Wekan。例如 Snap 版sudo snap install wekan文档指出Snap 目前仅保证在运行于 VirtualBox VM 的 Ubuntu 19.10 64bit 上正常工作该说法针对文档编写时的版本请以官方最新发布说明为准。设置网络与端口暴露可参考 VirtualBox 容器文档 中的桥接网络bridged networking说明。离线部署Offline补充路径Offline.md 提供了更贴合当前版本的无容器离线部署流程可作为原生部署的更新版参考在联网电脑下载 4 个文件wekan-VERSION-win64.zip含bundle目录、node.exe、mongodb-windows-x86_64-VERSION-signed.msi以及仓库中已存在的 start-wekan.bat。用 U 盘/光盘拷到离线 Windows 电脑。双击.msi安装 MongoDB取消勾选 MongoDB Compass。解压 zip把node.exe、start-wekan.bat与解压出的main.js一起放入bundle目录。用记事本编辑start-wekan.bat将ROOT_URL设为服务器 IP如http://192.168.0.100若 80 端口被占用则改端口SET ROOT_URLhttp://IP-ADDRESS-HERE:2000 SET PORT2000同时注意WRITABLE_PATH目录必须存在且可写附件迁移才能正常工作。双击start-wekan.bat若失败则以管理员身份运行Wekan 即位于http://IP-ADDRESS-HERE:2000/sign-in。离线升级要点来自 Offline 文档仅升级 Wekan备份 → 下载新 bundle → 替换旧 bundle → 重启。注意附件位于WRITABLE_PATH目录下如files\attachments、files\avatars不在 MongoDB 中迁移服务器时需一并拷贝。Node.js/MongoDB 也需升级时先mongodump备份目录dump若mongodump不存在需下载 MongoDB Database Tools再用mongorestore --drop恢复若报索引错误改用mongorestore --drop --noIndexRestore。若新旧start-wekan.bat有差异可用diff old-start-wekan.bat start-wekan.bat对比需安装 git 或使用 WSL/PowerShell。SSL/TLSCaddy 反向代理Wekan 本身以 HTTP 运行在本地端口SSL/TLS 由 Caddy、Nginx、Apache 等反代完成见 Settings。Offline.md 给出了两套 Caddy 配置。内网无互联网SSL/TLS因为无法访问 Lets Encrypt 等外部服务做自动证书签发必须自建证书体系生成自签名根 CA 与服务器证书openssl genrsa -out rootCA.key 2048 openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 365 -out rootCA.pem openssl req -new -nodes -newkey rsa:2048 -keyout server.key -out server.csr -config server.csr.cnf openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 365 -sha256 -extfile server.csr.cnf -extensions req_ext配置Caddyfile用tls指令显式加载证书禁止自动申请wekan.example.com { tls { load C:\wekan\certs\example.com.pem alpn http/1.1 } proxy / localhost:2000 { websocket transparent } }在每个客户端把rootCA.pem导入“受信任的根证书颁发机构”Windows 搜索“管理计算机证书”否则浏览器会告警。在每台电脑的C:\Windows\System32\drivers\etc\hosts追加管理员编辑记事本需把“*.txt”下拉改为“所有文件”192.168.0.200 wekan.example.com公网 SSL/TLSCloudFlare 源站证书部署拓扑example.com (CloudFlare SSL Origin Cert) 公网 IPv4 路由器 443 本地 IPv4 443 Caddy 本地 2000 Node.js (Wekan) MongoDB 27017。CloudFlare 到 Caddy 全程 SSL/TLS 加密服务器本机内 Caddy↔Wekan、Wekan↔MongoDB 为明文 HTTP但对外无泄漏。要点步骤详见 Offline.md路由器如 Arris 线缆猫做端口转发HTTP 80 与 HTTPS 443 → Wekan 服务器局域网 IP如192.168.0.200。用ipconfigcmd或“设置 → 网络和 Internet”查看本机 IPv4。在 CloudFlare 购买域名添加 A 记录Name:wekanIPv4 填公网 IPProxy 状态选橙色云TTL Auto。CloudFlare SSL/TLS 设为Full (strict)在 Origin Server 创建源站证书。用记事本把私钥、公钥、证书链按顺序粘贴为一个example.com.pem示例目录结构为C:\wekan\certs\example.com.pem。编辑start-wekan.batSET WRITABLE_PATH..\FILES SET ROOT_URLhttps://wekan.example.com SET PORT2000 node main.js log.txt 21附件异常时可改用WRITABLE_PATH..\FILES\。下载 Caddy Windows 版caddy.exe与Caddyfile、start-wekan.bat、bundle目录放在同一结构下。写入上文的Caddyfile后先格式化与校验配置caddy fmt --overwrite Caddyfile caddy validate无错误后运行caddy启动即可通过https://wekan.example.com访问。不推荐 / 已失效的路径务必避开文档明确将以下路径标记为DOES NOT WORK / Probaby does not work在 Windows 上直接源码编译安装Install-Wekan-from-source-on-Windows.md 中的旧流程已失效其历史做法包括安装 MeteorJS、NodeJS、Python 2.7、Visual C 2015 Build Tools、Git设置msvs_version 2015用meteor运行并处理 fibers 模块报错等——这些仅供了解历史不建议在生产中尝试。Windows 上的 Meteor 安装/构建zodern/windows-meteor-installer等方式构建会产生错误。文档中的相关示例choco install -y nodejs-lts ndm git、npm i -g zodern/windows-meteor-installer、meteorz --port 4000同样仅作背景参考。常见问题排查速查现象原因与处理翻译、附件上传不工作ROOT_URL与端口不符80 端口必须用http://IP而非localhostTypeError: The path argument must be of type string出自 models/attachments.jsWRITABLE_PATH目录不存在/不可写。先创建如C:\wekan-data与C:\wekan-data\attachments再设置WRITABLE_PATHC:\wekan-data、ATTACHMENTS_STORE_PATHC:\wekan-data\attachments局域网无法访问开发版设置BIND_IP0.0.0.0与ROOT_URLhttp://LAN-IP:4000后meteor run --port 4000启动后一直等待 MongoDB升级 MongoDB 后旧数据打不开按start-wekan.bat中的提示用旧版 mongodump / 新版 mongorestore 迁移检查 MongoDB 日志、featureCompatibilityVersion必要时mongod --repairWSL 中 git 无法解析 github.com按上文修改/etc/wsl.conf与/etc/resolv.confWindows 网络仅启用 IPv4附加说明文档还提到了 Windows 系统更新的相关话题如 WuMgr、Legacy Update、Snappy Driver Installer 等以及 Secure-Boot.md 中引用的安全公告链接这些属于部署前的宿主系统准备事项与本指南的部署主线相关度较低读者可按需查阅。【免费下载链接】wekanThe Open Source kanban, built with Meteor. GitHub issues/PRs are only for FLOSS Developers, not for support, support is at https://wekan.fi/commercial-support/ . PR source translation to imports/i18n/data/en.i18n.json, other translations at https://app.transifex.com/wekan/wekan项目地址: https://gitcode.com/GitHub_Trending/we/wekan创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价