Files

18 lines
968 B
JavaScript

import { readFile } from 'node:fs/promises'
import { createApp } from './app.mjs'
const secret = async name => process.env[name] ? (await readFile(process.env[name], 'utf8')).trim() : ''
const input = process.env.LOCAL_INPUT_DIR || '/data/inputs'
const config = {
password: await secret('WEB_PASSWORD_FILE'),
backendToken: await secret('LTX_TOKEN_FILE'),
backendUrl: process.env.LTX_BACKEND_URL || 'http://host.docker.internal:8120',
publicOrigin: process.env.PUBLIC_ORIGIN,
dist: new URL('../dist', import.meta.url).pathname,
roots: [
{ local:input, backend:process.env.BACKEND_INPUT_DIR || '/data/LTXDesktop/remote-inputs', writable:true },
{ local:process.env.LOCAL_OUTPUT_DIR || '/data/outputs', backend:process.env.BACKEND_OUTPUT_DIR || '/data/LTXDesktop/outputs', writable:false },
],
}
const server=await createApp(config)
server.listen(Number(process.env.PORT||8118),process.env.HOST||'127.0.0.1',()=>console.log('LTX DeskWEB is ready'))