OK, new v17 install using the beta ISO. Everything is working except the UCP Daemon is not running. The ucp_err.log has this:
2026-02-21 14:11 -05:00: Error [ERR_REQUIRE_ESM]: require() of ES Module /var/www/html/admin/modules/ucp/node/node_modules/mariadb/promise.js from /var/www/html/admin/modules/ucp/node/lib/freepbx.js not supported.
2026-02-21 14:11 -05:00: promise.js is treated as an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which declares all .js files in that package scope as ES modules.
2026-02-21 14:11 -05:00: Instead either rename promise.js to end in .cjs, change the requiring code to use dynamic import() which is available in all CommonJS modules, or change "type": "module" to "type": "commonjs" in /var/www/html/admin/modules/ucp/node/node_modules/mariadb/package.json to treat all .js files as CommonJS (using .mjs for all ES modules instead).
2026-02-21 14:11 -05:00:
2026-02-21 14:11 -05:00: at Hook._require.Module.require (/var/www/html/admin/modules/pm2/node/node_modules/require-in-the-middle/index.js:101:39)
2026-02-21 14:11 -05:00: at Object.<anonymous> (/var/www/html/admin/modules/ucp/node/lib/freepbx.js:9:15)
2026-02-21 14:11 -05:00: at Hook._require.Module.require (/var/www/html/admin/modules/pm2/node/node_modules/require-in-the-middle/index.js:101:39)
2026-02-21 14:11 -05:00: at Object.<anonymous> (/var/www/html/admin/modules/ucp/node/index.js:7:11)
2026-02-21 14:11 -05:00: at Object.<anonymous> (/var/www/html/admin/modules/pm2/node/node_modules/pm2/lib/ProcessContainerFork.js:33:23) {
2026-02-21 14:11 -05:00: code: 'ERR_REQUIRE_ESM'
2026-02-21 14:11 -05:00: }
Everything appears to be up to date.
I’ve tried uninstalling and reinstalling ucp. What else should I check?
fwconsole pm2 --list returns that it starts and it’s online, but it stops immediately.