mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 18:36:30 +01:00 
			
		
		
		
	remove port scanning for an available port #3036
This commit is contained in:
		| @@ -65,7 +65,6 @@ | ||||
|     "node-abi": "3.22.0", | ||||
|     "normalize-strings": "1.1.1", | ||||
|     "open": "8.4.0", | ||||
|     "portscanner": "2.2.0", | ||||
|     "rand-token": "1.0.1", | ||||
|     "react": "17.0.2", | ||||
|     "react-dom": "17.0.2", | ||||
|   | ||||
| @@ -1,10 +1,3 @@ | ||||
| const config = require('./config'); | ||||
| const env = require('./env'); | ||||
|  | ||||
| let environmentHost; | ||||
|  | ||||
| if (process.env.TRILIUM_HOST) { | ||||
|     environmentHost = process.env.TRILIUM_HOST; | ||||
| } | ||||
|  | ||||
| module.exports = Promise.resolve(environmentHost || config['Network']['host'] || '0.0.0.0'); | ||||
| module.exports = process.env.TRILIUM_HOST || config['Network']['host'] || '0.0.0.0'; | ||||
|   | ||||
| @@ -1,28 +1,15 @@ | ||||
| const config = require('./config'); | ||||
| const utils = require('./utils'); | ||||
| const env = require('./env'); | ||||
| const portscanner = require('portscanner'); | ||||
|  | ||||
| let environmentPort; | ||||
|  | ||||
| if (process.env.TRILIUM_PORT) { | ||||
|     environmentPort = parseInt(process.env.TRILIUM_PORT); | ||||
|     module.exports = parseInt(process.env.TRILIUM_PORT); | ||||
|     return; | ||||
| } | ||||
|  | ||||
| if (utils.isElectron()) { | ||||
|     module.exports = new Promise((resolve, reject) => { | ||||
|         const startingPort = environmentPort || (env.isDev() ? 37740 : 37840); | ||||
|  | ||||
|         portscanner.findAPortNotInUse(startingPort, startingPort + 10, '127.0.0.1', function(error, port) { | ||||
|             if (error) { | ||||
|                 reject(error); | ||||
|             } | ||||
|             else { | ||||
|                 resolve(port); | ||||
|             } | ||||
|         }) | ||||
|     }); | ||||
|     module.exports = env.isDev() ? 37740 : 37840; | ||||
| } | ||||
| else { | ||||
|     module.exports = Promise.resolve(environmentPort || config['Network']['port'] || '3000'); | ||||
|     module.exports = config['Network']['port'] || '3000'; | ||||
| } | ||||
| @@ -33,7 +33,7 @@ function isDbInitialized() { | ||||
| async function initDbConnection() { | ||||
|     if (!isDbInitialized()) { | ||||
|         log.info(`DB not initialized, please visit setup page` + | ||||
|             (utils.isElectron() ? '' : ` - http://[your-server-host]:${await port} to see instructions on how to initialize Trilium.`)); | ||||
|             (utils.isElectron() ? '' : ` - http://[your-server-host]:${port} to see instructions on how to initialize Trilium.`)); | ||||
|  | ||||
|         return; | ||||
|     } | ||||
|   | ||||
| @@ -35,7 +35,7 @@ async function createExtraWindow(notePath, hoistedNoteId = 'root') { | ||||
|     }); | ||||
|  | ||||
|     win.setMenuBarVisibility(false); | ||||
|     win.loadURL('http://127.0.0.1:' + await port + '/?extra=1&extraHoistedNoteId=' + hoistedNoteId + '#' + notePath); | ||||
|     win.loadURL(`http://127.0.0.1:${port}/?extra=1&extraHoistedNoteId=${hoistedNoteId}#${notePath}`); | ||||
|  | ||||
|     configureWebContents(win.webContents, spellcheckEnabled); | ||||
| } | ||||
| @@ -77,7 +77,7 @@ async function createMainWindow(app) { | ||||
|     mainWindowState.manage(mainWindow); | ||||
|  | ||||
|     mainWindow.setMenuBarVisibility(false); | ||||
|     mainWindow.loadURL('http://127.0.0.1:' + await port); | ||||
|     mainWindow.loadURL('http://127.0.0.1:' + port); | ||||
|     mainWindow.on('closed', () => mainWindow = null); | ||||
|  | ||||
|     configureWebContents(mainWindow.webContents, spellcheckEnabled); | ||||
| @@ -143,7 +143,7 @@ async function createSetupWindow() { | ||||
|     }); | ||||
|  | ||||
|     setupWindow.setMenuBarVisibility(false); | ||||
|     setupWindow.loadURL('http://127.0.0.1:' + await port); | ||||
|     setupWindow.loadURL('http://127.0.0.1:' + port); | ||||
|     setupWindow.on('closed', () => setupWindow = null); | ||||
| } | ||||
|  | ||||
|   | ||||
							
								
								
									
										17
									
								
								src/www
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								src/www
									
									
									
									
									
								
							| @@ -53,11 +53,8 @@ async function startTrilium() { | ||||
|      */ | ||||
|     require("electron").app.requestSingleInstanceLock(); | ||||
|  | ||||
|     const usedPort = await port; | ||||
|     const usedHost = await host; | ||||
|  | ||||
|     app.set('port', usedPort); | ||||
|     app.set('host', usedHost); | ||||
|     app.set('port', port); | ||||
|     app.set('host', host); | ||||
|  | ||||
|     // Check from config whether to trust reverse proxies to supply user IPs, hostnames and protocols | ||||
|     if (config['Network']['trustedReverseProxy']) { | ||||
| @@ -83,12 +80,12 @@ async function startTrilium() { | ||||
|  | ||||
|         httpServer = https.createServer(options, app); | ||||
|  | ||||
|         log.info("App HTTPS server starting up at port " + usedPort); | ||||
|         log.info("App HTTPS server starting up at port " + port); | ||||
|     } | ||||
|     else { | ||||
|         httpServer = http.createServer(app); | ||||
|  | ||||
|         log.info("App HTTP server starting up at port " + usedPort); | ||||
|         log.info("App HTTP server starting up at port " + port); | ||||
|     } | ||||
|  | ||||
|     log.info(JSON.stringify(appInfo, null, 2)); | ||||
| @@ -101,7 +98,7 @@ async function startTrilium() { | ||||
|      */ | ||||
|  | ||||
|     httpServer.keepAliveTimeout = 120000 * 5; | ||||
|     httpServer.listen(usedPort, usedHost); | ||||
|     httpServer.listen(port, host); | ||||
|     httpServer.on('error', error => { | ||||
|             if (error.syscall !== 'listen') { | ||||
|                 throw error; | ||||
| @@ -110,12 +107,12 @@ async function startTrilium() { | ||||
|             // handle specific listen errors with friendly messages | ||||
|             switch (error.code) { | ||||
|                 case 'EACCES': | ||||
|                     console.error(`Port ${usedPort} requires elevated privileges`); | ||||
|                     console.error(`Port ${port} requires elevated privileges`); | ||||
|                     process.exit(1); | ||||
|                     break; | ||||
|  | ||||
|                 case 'EADDRINUSE': | ||||
|                     console.error(`Port ${usedPort} is already in use`); | ||||
|                     console.error(`Port ${port} is already in use`); | ||||
|                     process.exit(1); | ||||
|                     break; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user