• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

MagicMirror Servermode on Synology DS

Scheduled Pinned Locked Moved Tutorials
servermodesynologydiskstationwebserver
14 Posts 6 Posters 10.8k Views 7 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B Offline
    bhepler Module Developer @AnyKey
    last edited by May 16, 2017, 3:17 PM

    @AnyKey It looks like you can. A quick perusal of the Synology forums found that a few users have been using Nodejs on their devices. Off the top of my head, the process to manually install MagicMirror on a non-Raspberry system is:

    1. install Nodejs & NPM (here’s a hint)
    2. Install git and clone the repository.
    3. Run npm install in the MagicMirror folder.
    4. Start node and it will provide a webserver.

    That should get you started. You may have to switch the port that Node uses for the web server, but that’s trivial.

    A 1 Reply Last reply May 16, 2017, 8:36 PM Reply Quote 1
    • A Offline
      AnyKey @bhepler
      last edited by AnyKey May 16, 2017, 9:09 PM May 16, 2017, 8:36 PM

      @bhepler said in MagicMirror Servermode on Synology DS:

      Start node and it will provide a webserver.

      Thanks for your help so far (both of you!)

        1. There is a Nodejs package distributed by synology. installed it (ckeck)
        1. I found a package “Gitlab” and managed to install it. Rep cloned (check)
        1. Running nmp install, I got some warnings, of course I didn’t take screenshots (check, I think)
        1. “node serveronly” seems to work. But I’m not able to connect to it over diskstation:8080. Besides that, I haven’t figured out how to change the config file yet. Have to do some more research.
      B 1 Reply Last reply May 17, 2017, 1:30 AM Reply Quote 0
      • B Offline
        bhepler Module Developer @AnyKey
        last edited by May 17, 2017, 1:30 AM

        @AnyKey To my knowledge, warnings can be safely ignored. It sounds like you’re most of the way there.

        For #4, did you adjust the ipWhitelist parameter in your config.js? I would think that by default, it would be configured to allow browser access only by the Diskstation. You’ll have to change that to include either your entire internal network or your specific machines (depending on your application).

        A 1 Reply Last reply May 17, 2017, 11:47 AM Reply Quote 0
        • A Offline
          AnyKey @bhepler
          last edited by May 17, 2017, 11:47 AM

          @bhepler I haven’t managed to change the ipwhitelist (and other configs) yet, because I don’t know how to access the config.js file. After installing git, the next steps had to be done via the docker integrated ssh client, because I wasn’t able to access the git container (files in it) from my laptop using putty.
          But I couldn’t find a command to open the js-file in some sort of editor. It was late anyway, so I decided to sleep over it and I will have another try this afternoon.

          B 1 Reply Last reply May 17, 2017, 12:49 PM Reply Quote 0
          • C Offline
            cyberphox
            last edited by May 17, 2017, 12:17 PM

            I’ve got an Xpenology running so following this topic

            Full time Dad, DJ and entertainer and lover of technology.

            1 Reply Last reply Reply Quote 0
            • B Offline
              bhepler Module Developer @AnyKey
              last edited by May 17, 2017, 12:49 PM

              @AnyKey Heh. I’ve been there.
              First, you’ll need to be sure that the config.js file exists. A manual installation generally does not copy the sample file into the final destination, so you’ll need to do it yourself. From the MagicMirror folder, cp config/config.js.sample config/config.js should put the file in the proper place. At that point, it’s ready for editing.

              The Unix-like system that the Diskstation uses must have an editor of some form on there. If not nano, then VIM or VI. From the MagicMirror directory, you should be able to type nano config/config.js or vi config/config.js and open up the config file.

              Absolute worst case scenario: you can copy & paste the config.js contents from your desktop machine to the file via PuTTY. Have the config file open on your desktop, select all, copy to clipboard. In the PuTTY window, navigate to the MagicMirror/config folder and enter cat > config.js and then press enter. At this point, everything you type will be in the file… so just right-click with your mouse to paste the clipboard into the file. When it finishes, hit enter one more time and the ctrl+d (control D). That will save the contents.

              A 1 Reply Last reply May 17, 2017, 12:59 PM Reply Quote 0
              • A Offline
                AnyKey @bhepler
                last edited by May 17, 2017, 12:59 PM

                @bhepler The config.js didn’t existed after the install process, so I copied it, like you mentioned. The real stungle was to find an editor to open and edit the config file. Nano is not supported, that was the first (and only editor) editor I’ve tried. When I’m home, I will test your other suggestions.

                B 1 Reply Last reply May 17, 2017, 1:36 PM Reply Quote 0
                • B Offline
                  broberg Project Sponsor @AnyKey
                  last edited by May 17, 2017, 1:36 PM

                  @AnyKey any text editor will be able to read .js files.

                  1 Reply Last reply Reply Quote 0
                  • Y Offline
                    yawns Moderator
                    last edited by May 17, 2017, 2:12 PM

                    according to the synology wiki:

                    ipkg update; ipkg install nano

                    1 Reply Last reply Reply Quote 1
                    • A Offline
                      AnyKey
                      last edited by May 17, 2017, 5:13 PM

                      Ok, i managed to edit the config.js file to a full whitelist with nano. To install nano I had to do

                      sudo apt-get update
                      sudo apt-get install nano
                      

                      After that, I run “node serveronly” in the MagicMirror folder and I got the following log:

                      root@synology_gitlab:/home/git/gitlab/MagicMirror# node serveronly              
                      Starting MagicMirror: v2.1.1                                                    
                      Loading config ...                                                              
                      Loading module helpers ...                                                      
                      No helper found for module: alert.                                              
                      Initializing new module helper ...                                              
                      Module helper loaded: updatenotification                                        
                      No helper found for module: clock.                                              
                      Initializing new module helper ...                                              
                      Module helper loaded: calendar                                                  
                      No helper found for module: compliments.                                        
                      No helper found for module: currentweather.                                     
                      No helper found for module: weatherforecast.                                    
                      Initializing new module helper ...                                              
                      Module helper loaded: newsfeed                                                  
                      All module helpers loaded.                                                      
                      Starting server on port 8080 ...                                                
                      Starting server op port 8080 ...                                                
                      You're using a full whitelist configuration to allow for all IPs   
                      Server started ...                                                              
                      Connecting socket for: updatenotification                                       
                      Connecting socket for: calendar                                                 
                      Starting node helper for: calendar                                              
                      Connecting socket for: newsfeed                                                 
                      Starting module: newsfeed                                                       
                      Sockets connected & modules started ...                                         
                                                                                                      
                      Ready to go! Please point your browser to: http://localhost:8080                
                      Whoops! There was an uncaught exception...                                      
                      { Error: listen EADDRINUSE :::8080                                              
                          at Object.exports._errnoException (util.js:1033:11)                         
                          at exports._exceptionWithHostPort (util.js:1056:20)                         
                          at Server._listen2 (net.js:1270:14)                                         
                          at listen (net.js:1306:10)                                                  
                          at Server.listen (net.js:1397:7)                                            
                          at new Server (/home/git/gitlab/MagicMirror/js/server.js:27:9)              
                          at /home/git/gitlab/MagicMirror/js/app.js:219:18                            
                          at loadNextModule (/home/git/gitlab/MagicMirror/js/app.js:168:5)            
                          at /home/git/gitlab/MagicMirror/js/app.js:163:6                             
                          at Class.loaded (/home/git/gitlab/MagicMirror/modules/node_modules/node_help
                      er/index.js:19:3)                                                               
                        code: 'EADDRINUSE',
                        errno: 'EADDRINUSE',                                                          
                        syscall: 'listen',                                                            
                        address: '::',                                                                
                        port: 8080 }                                                                  
                      MagicMirror will not quit, but it might be a good idea to check why this happene
                      d. Maybe no internet connection?                                                
                      If you think this really is an issue, please open an issue on GitHub: https://gi
                      thub.com/MichMich/MagicMirror/issues 
                      

                      But I don’t get a connection when opening “http://localhost:8080”.

                      At this point, I come to the conclusion, that it will be much easier and less stressful to run the MM Server on my Pi3 (managed to install and configure it at work in three hours less). Besides that, the ressources need for running a MM container seems to be very high, working with ne Synology while running MM is a pain in the ***.

                      From my point of view this topic can be closed. I’d like to thank everybody who participated and wanted to help me! You guys rock :-)
                      sincerely yours Andre

                      B A 2 Replies Last reply May 17, 2017, 6:07 PM Reply Quote 0
                      • 1
                      • 2
                      • 1 / 2
                      1 / 2
                      • First post
                        7/14
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy