u
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
# Server
|
||||
# Host interface to listen on (defaults to 127.0.0.1 for local only, use 0.0.0.0 for all network interfaces)
|
||||
HOST=127.0.0.1
|
||||
PORT=4208
|
||||
# HTTPS server port (defaults to 8443, set to 0 or false to disable)
|
||||
HTTPS_PORT=8443
|
||||
|
||||
@@ -182,7 +182,7 @@ export async function buildApiApp() {
|
||||
return app;
|
||||
}
|
||||
|
||||
function listenOnPort(instance, port, protocol) {
|
||||
function listenOnPort(instance, port, protocol, host = env.host) {
|
||||
return new Promise((resolve, reject) => {
|
||||
instance.once('listening', () => {
|
||||
resolve();
|
||||
@@ -197,14 +197,14 @@ function listenOnPort(instance, port, protocol) {
|
||||
} catch {
|
||||
// lsof unavailable or no match
|
||||
}
|
||||
apiLog.error(`Port ${port} (${protocol}) is already in use${detail}. Check with: lsof -i :${port}`);
|
||||
apiLog.error(`Port ${port} (${protocol}) on ${host} is already in use${detail}. Check with: lsof -i :${port}`);
|
||||
} else {
|
||||
apiLog.error(`${protocol} server error:`, err.message);
|
||||
}
|
||||
reject(err);
|
||||
});
|
||||
|
||||
instance.listen(port);
|
||||
instance.listen(port, host);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -225,7 +225,7 @@ export async function startApi() {
|
||||
const httpInstance = http.createServer(app);
|
||||
await listenOnPort(httpInstance, env.port, 'HTTP');
|
||||
server = httpInstance;
|
||||
apiLog.info(`API listening on port ${env.port} (HTTP)`);
|
||||
apiLog.info(`API listening on ${env.host}:${env.port} (HTTP)`);
|
||||
|
||||
if (env.httpsPort) {
|
||||
try {
|
||||
@@ -233,7 +233,7 @@ export async function startApi() {
|
||||
const httpsInstance = https.createServer(tls, app);
|
||||
await listenOnPort(httpsInstance, env.httpsPort, 'HTTPS');
|
||||
httpsServer = httpsInstance;
|
||||
apiLog.info(`API listening on port ${env.httpsPort} (HTTPS self-signed)`);
|
||||
apiLog.info(`API listening on ${env.host}:${env.httpsPort} (HTTPS self-signed)`);
|
||||
} catch (err) {
|
||||
apiLog.error('Failed to start HTTPS server:', err.message);
|
||||
}
|
||||
|
||||
@@ -152,14 +152,14 @@ export async function startBackendMonitor() {
|
||||
await new Promise((resolve, reject) => {
|
||||
serverInstance.once('listening', () => resolve());
|
||||
serverInstance.once('error', (err) => {
|
||||
monitorLog.error(`Failed to listen on port ${env.monitorPort}:`, err.message);
|
||||
monitorLog.error(`Failed to listen on ${env.host}:${env.monitorPort}:`, err.message);
|
||||
reject(err);
|
||||
});
|
||||
serverInstance.listen(env.monitorPort);
|
||||
serverInstance.listen(env.monitorPort, env.host);
|
||||
});
|
||||
|
||||
monitorServer = serverInstance;
|
||||
monitorLog.info(`Backend Monitor Interface running on http://localhost:${env.monitorPort} (dev mode, no auth)`);
|
||||
monitorLog.info(`Backend Monitor Interface running on http://${env.host}:${env.monitorPort} (dev mode, no auth)`);
|
||||
return monitorServer;
|
||||
}
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ function parseHttpsPort(val) {
|
||||
}
|
||||
|
||||
export default {
|
||||
host: process.env.HOST || '127.0.0.1',
|
||||
port: Number(process.env.PORT) || 4208,
|
||||
httpsPort: parseHttpsPort(process.env.HTTPS_PORT),
|
||||
monitorPort: Number(process.env.MONITOR_PORT || process.env.SQL_STUDIO_PORT) || 4210,
|
||||
|
||||
Reference in New Issue
Block a user