can't login via browserless railway cli on lxc
rghinkle
HOBBYOP

23 days ago

I have railway cli on my LXC in Proxmox. It installs 4.40.2 fine. But I can't get login to work even with the --browserless argument. It shows the Open the browser? (Y/n), but immediately goes back to shell prompt without the opportunity to type y/n. I've tried passing in the key, editing config in .railway, setting $env variables, etc. Is it something to do with it being on an LXC, and i am missing a dependency?

$10 Bounty

3 Replies

Status changed to Open Railway 23 days ago


theycallmeeyy
FREE

23 days ago

The issue isn’t really caused by LXC or Proxmox—it’s because the Railway CLI can’t handle interactive prompts properly in your terminal environment.

Key points:

  • The login prompt exits immediately because your session likely doesn’t have a proper TTY (interactive terminal).
  • This is common in containers, web consoles, or certain SSH setups.

Fix:

  • Skip the browser/login prompt and use a token instead:
railway login --token YOUR_TOKEN  

or

export RAILWAY_TOKEN=YOUR_TOKEN  
railway whoami  

Bottom line:

It’s a terminal/TTY limitation, not a missing dependency. Use token-based login for reliable access.


rghinkle
HOBBYOP

23 days ago

Neither of those methods worked for me unfortunately. The --token is an unexpected argument. And the raliway whoami returned nothing. I removed the config.json file after that test, and tried again. Neither worked that way either.

There are options for what console mode I use in the LXC Options. 1)default tty 2) /dev/tty[X] , 3) /dev/console, 4) shell.


rghinkle
HOBBYOP

23 days ago

to see if i could see anything on the console, i edited railway.js in the catch block to console.log(e). I see a little info in the logger: Error: Command failed: /usr/lib/node_modules/@railway/cli/bin/railway login --browserless

at genericNodeError (node:internal/errors:984:15)

at wrappedFn (node:internal/errors:538:14)

at checkExecSyncError (node:child_process:891:11)

at execFileSync (node:child_process:927:15)

at file:///usr/lib/node_modules/@railway/cli/bin/railway.js:11:2

at ModuleJob.run (node:internal/modules/esm/module_job:325:25)

at async ModuleLoader.import (node:internal/modules/esm/loader:606:24)

at async asyncRunEntryPointWithESMLoader (node:internal/modules/run_main:117:5) {

status: null,

signal: 'SIGSEGV',

output: [ null, null, null ],

pid: 67271,

stdout: null,

stderr: null

}


Welcome!

Sign in to your Railway account to join the conversation.

Loading...