jub0t/Mechon

Cannot access panel from other device on same network

Closed this issue ยท 26 comments

If I type :2278 or just then the page just can't load. How can I access the panel from a device other than the host?

jub0t commented

How can I access the panel from a device other than the host?

You need to port forward your local IP to your public IP, or use an online VPS.

What if it's on the same network? Normally I can just type in the local IP of the device and the port

jub0t commented

What if it's on the same network? Normally I can just type in the local IP of the device and the port

Check the logs for any errors and make sure the panel is working.

@jareer12 this is what I'm getting:

warn:    --minUptime not set. Defaulting to: 1000ms
warn:    --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info:    Forever processing file: index.js
(node:2168) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
(Use `node --trace-warnings ...` to show where the warning was created)
(node:2168) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency

that's it though, doesn't seem to be anything fatal

and this is my nginx config:

server  {
    listen 80;
    server_name    192.168.1.18; ## Your Server

    location / {
        proxy_pass         http://192.168.1.18:2278; ### Replace "2278"
With Your Port(If You Changed).
        proxy_http_version 1.1;
        proxy_set_header   Upgrade $http_upgrade;
        proxy_set_header   Connection "upgrade";
        proxy_set_header   Host $host;
    }
}
jub0t commented

I don't think that's how server_name works, it has to be a domain. If you aren't using a domain, remove the server_name option.

alright, should I try a re-run afterwards?

still doesn't work :(
Screenshot 2022-06-26 at 8 04 15 AM

jub0t commented

still doesn't work

Try 127.0.0.1:2278.

well that's an issue since I'm running Ubuntu Server 22.04 LTS, meaning that I can't really connect to a website locally since there is no desktop installed

jub0t commented

well that's an issue since I'm running Ubuntu Server 22.04 LTS, meaning that I can't really connect to a website locally since there is no desktop installed

You can run curl http://127.0.0.1:2278 to test on the Ubuntu machine, also make sure you changed .env.example to .env and the panel is actually running on port 2278

yeah it doesn't work, which means no web server is running

what should I do now to troubleshoot? Obviously no one else has had this issue

jub0t commented

what should I do now to troubleshoot? Obviously no one else has had this issue

Run forever logs.

info:    Logs for running Forever processes
data:        script   logfile                    
data:    [0] index.js /home/pi/.forever/VZYF.log 
data:    [1] index.js /home/pi/.forever/z9f9.log 

that's it

jub0t commented
info:    Logs for running Forever processes
data:        script   logfile                    
data:    [0] index.js /home/pi/.forever/VZYF.log 
data:    [1] index.js /home/pi/.forever/z9f9.log 

forever logs 0
forever logs 1

forever logs 1 throws this:

data:    index.js:570774 - internal/modules/cjs/loader.js:818
data:    index.js:570774 -   throw err;
data:    index.js:570774 -   ^
data:    index.js:570774 - Error: Cannot find module 'fs/promises'
data:    index.js:570774 - Require stack:
data:    index.js:570774 - - /home/pi/DiscordBotPanel/modules/InsertBase.js
data:    index.js:570774 - - /home/pi/DiscordBotPanel/modules/loader.js
data:    index.js:570774 - - /home/pi/DiscordBotPanel/index.js
data:    index.js:570774 -     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:815:15)
data:    index.js:570774 -     at Function.Module._load (internal/modules/cjs/loader.js:667:27)
data:    index.js:570774 -     at Module.require (internal/modules/cjs/loader.js:887:19)
data:    index.js:570774 -     at require (internal/modules/cjs/helpers.js:74:18)
data:    index.js:570774 -     at Object.<anonymous> (/home/pi/DiscordBotPanel/modules/InsertBase.js:3:10)
data:    index.js:570774 -     at Module._compile (internal/modules/cjs/loader.js:999:30)
data:    index.js:570774 -     at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
data:    index.js:570774 -     at Module.load (internal/modules/cjs/loader.js:863:32)
data:    index.js:570774 -     at Function.Module._load (internal/modules/cjs/loader.js:708:14)
data:    index.js:570774 -     at Module.require (internal/modules/cjs/loader.js:887:19) {
data:    index.js:570774 -   code: 'MODULE_NOT_FOUND',
data:    index.js:570774 -   requireStack: [
data:    index.js:570774 -     '/home/pi/DiscordBotPanel/modules/InsertBase.js',
data:    index.js:570774 -     '/home/pi/DiscordBotPanel/modules/loader.js',
data:    index.js:570774 -     '/home/pi/DiscordBotPanel/index.js'
data:    index.js:570774 -   ]
data:    index.js:570774 - }
data:    index.js:570774 - {"level":"error","message":"Forever detected script exited with code: 1"}

forever logs 0 is the same basically

@jareer12 it might be problematic that I'm using node v12.22.9. Should I try updating it maybe?

jub0t commented

Run npm i fs/promises.

Hold on I'm rebooting the machine rn, will be a minute. I also updated to node v16

npm i fs/promises

Sadly it's throwing the following, even with sudo:

npm ERR! code 128
npm ERR! An unknown git error occurred
npm ERR! command git --no-replace-objects ls-remote ssh://git@github.com/fs/promises.git
npm ERR! git@github.com: Permission denied (publickey).
npm ERR! fatal: Could not read from remote repository.
npm ERR! 
npm ERR! Please make sure you have the correct access rights
npm ERR! and the repository exists.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2022-06-26T12_24_06_630Z-debug-0.log

it seems the repo probably doesn't exist

@jareer12 I got it to work by running npm install fs.promises, not fs/promises. Now the web server is running and I can access it anywhere on the network! Thanks for the help ๐Ÿ‘

Logs:

(node:2745) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
(Use `node --trace-warnings ...` to show where the warning was created)
(node:2745) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
data:    index.js:2701 - (node:2694) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
data:    index.js:2701 - (Use `node --trace-warnings ...` to show where the warning was created)
data:    index.js:2701 -        _            _               _      
data:    index.js:2701 -       /\ \         / /\            /\ \    
data:    index.js:2701 -      /  \ \____   / /  \          /  \ \   
data:    index.js:2701 -     / /\ \_____\ / / /\ \        / /\ \ \  
data:    index.js:2701 -    / / /\/___  // / /\ \ \      / / /\ \_\ 
data:    index.js:2701 -   / / /   / / // / /\ \_\ \    / / /_/ / / 
data:    index.js:2701 -  / / /   / / // / /\ \ \___\  / / /__\/ /  
data:    index.js:2701 - / / /   / / // / /  \ \ \__/ / / /_____/   
data:    index.js:2701 - \ \ \__/ / // / /____\_\ \  / / /          
data:    index.js:2701 -  \ \___\/ // / /__________\/ / /           
data:    index.js:2701 -   \/_____/ \/_____________/\/_/ 
data:    index.js:2701 - [!] Dashboard Is Open On http://localhost:2278

@jareer12 one more question - is there any way to run python bots with your panel, or just JS? Thanks

jub0t commented

@jareer12 one more question - is there any way to run python bots with your panel, or just JS? Thanks

No, this panel only supports node.js scripts/applications. I'm working on a new project like this. It's called Dynamo

wow Dynamo looks epic! I'm gonna try it out so I can host other things too with more customizability! You're amazing!