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 install on proxmox LXC Container?

    Scheduled Pinned Locked Moved Solved Troubleshooting
    37 Posts 3 Posters 8.6k Views 3 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.
    • kusselinK Offline
      kusselin
      last edited by

      Hi, is it possible to install MagicMirro in a LXC Container on Proxmox?

      I installed the sdtweil scipt from his github page…but after i installed in /home and i take this:
      pm2 start magicmirror

      magicmirror@magicmirror-live:~$ pm2 start magicmirror
      [PM2][ERROR] Script not found: /home/magicmirror/magicmirror
      magicmirror@magicmirror-live:~$
      
      

      what can i do?

      best regards and thanks a lot

      S 1 Reply Last reply Reply Quote 0
      • kusselinK Offline
        kusselin
        last edited by

        Hi sam,

        This was my Solution Now

        https://forum.iobroker.net/topic/52195/magic-mirror-zusammen-mit-iobroker/173?_=1666207319057

        Crontab

        1 Reply Last reply Reply Quote 0
        • S Offline
          sdetweil @kusselin
          last edited by

          @kusselin everything is case sensitive

          see the installed pm2 apps

          pm2 status

          pm2 start MagicMirror

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          1 Reply Last reply Reply Quote 0
          • kusselinK Offline
            kusselin
            last edited by kusselin

            i installed it new…and this is comming out:

             bash -c  "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/raspberry.sh)"
            
            $$\      $$\                     $$\           $$\      $$\ $$\                                          $$$$$$\
            $$$\    $$$ |                    \__|          $$$\    $$$ |\__|                                        $$  __$$\
            $$$$\  $$$$ | $$$$$$\   $$$$$$\  $$\  $$$$$$$\ $$$$\  $$$$ |$$\  $$$$$$\   $$$$$$\   $$$$$$\   $$$$$$\  \__/  $$ |
            $$\$$\$$ $$ | \____$$\ $$  __$$\ $$ |$$  _____|$$\$$\$$ $$ |$$ |$$  __$$\ $$  __$$\ $$  __$$\ $$  __$$\  $$$$$$  |
            $$ \$$$  $$ | $$$$$$$ |$$ /  $$ |$$ |$$ /      $$ \$$$  $$ |$$ |$$ |  \__|$$ |  \__|$$ /  $$ |$$ |  \__|$$  ____/
            $$ |\$  /$$ |$$  __$$ |$$ |  $$ |$$ |$$ |      $$ |\$  /$$ |$$ |$$ |      $$ |      $$ |  $$ |$$ |      $$ |
            $$ | \_/ $$ |\$$$$$$$ |\$$$$$$$ |$$ |\$$$$$$$\ $$ | \_/ $$ |$$ |$$ |      $$ |      \$$$$$$  |$$ |      $$$$$$$$\
            \__|     \__| \_______| \____$$ |\__| \_______|\__|     \__|\__|\__|      \__|       \______/ \__|      \________|
                                   $$\   $$ |
                                   \$$$$$$  |
                                    \______/
            
            install log being saved to /root/install.log
            Installing helper tools ...
            Updating packages ...
            [ <=>                                                                          ]
            Check current Node installation ...
            Node currently installed. Checking version number.
            Minimum Node version: v16.9.1
            Installed Node version: v16.17.1
            No Node.js upgrade necessary.
            Check current NPM installation ...
            NPM currently installed. Checking version number.
            Minimum npm version: V7.11.2
            Installed npm version: V8.15.0
            No npm upgrade necessary.
            Cloning MagicMirror ...
            Cloning into 'MagicMirror'...
            remote: Enumerating objects: 323, done.
            remote: Counting objects: 100% (323/323), done.
            remote: Compressing objects: 100% (256/256), done.
            remote: Total 323 (delta 64), reused 159 (delta 55), pack-reused 0
            Receiving objects: 100% (323/323), 446.83 KiB | 4.30 MiB/s, done.
            Resolving deltas: 100% (64/64), done.
            Cloning MagicMirror Done!
            Installing dependencies ...
            Dependencies installation Done!
            setting up initial config.js
            Check plymouth installation ...
            plymouth is not installed.
            Do you want use pm2 for auto starting of your MagicMirror (y/N)?y
            install and setup pm2
            bash: line 557: $: command not found
            [PM2][WARN] Applications MagicMirror not running, starting...
            [PM2][ERROR] Error: Script not found: /home/root/MagicMirror/installers/mm.sh
            [PM2] Saving current process list...
            [PM2][WARN] PM2 is not managing any process, skipping save...
            [PM2][WARN] To force saving use: pm2 save --force
            Do you want to disable the screen saver? (y/N)?y
            
            We're ready! Run pm2 start MagicMirror from the ~/MagicMirror directory to start your MagicMirror.
            
            
             pm2 start MagicMirror
            [PM2] Applying action restartProcessId on app [MagicMirror](ids: [ 0 ])
            [PM2] [MagicMirror](0) ✓
            [PM2] Process successfully started
            ┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
            │ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
            ├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
            │ 0  │ MagicMirror        │ fork     │ 18   │ online    │ 0%       │ 4.0kb    │
            └────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
            [PM2][WARN] Current process list is not synchronized with saved list. Type 'pm2 save' to synchronize.
            
            
             pm2 status
            ┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
            │ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
            ├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
            │ 0  │ MagicMirror        │ fork     │ 48   │ online    │ 0%       │ 57.2mb   │
            └────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
            
            
             pm2 start MagicMirror
            [PM2] Applying action restartProcessId on app [MagicMirror](ids: [ 0 ])
            [PM2] [MagicMirror](0) ✓
            [PM2] Process successfully started
            ┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
            │ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
            ├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
            │ 0  │ MagicMirror        │ fork     │ 71   │ online    │ 0%       │ 4.0kb    │
            
            

            Oh…the MagicMirror is started i see it, but when i get this line in the browser

            192.168.200.74:8080 i dont see the screen :-(

            ping is going:

            ping 192.168.200.74
            
            Ping wird ausgeführt für 192.168.200.74 mit 32 Bytes Daten:
            Antwort von 192.168.200.74: Bytes=32 Zeit=8ms TTL=63
            Antwort von 192.168.200.74: Bytes=32 Zeit=1ms TTL=63
            Antwort von 192.168.200.74: Bytes=32 Zeit=1ms TTL=63
            Antwort von 192.168.200.74: Bytes=32 Zeit=1ms TTL=63
            
             MagicMirror² Config Sample
             *
             * By Michael Teeuw https://michaelteeuw.nl
             * MIT Licensed.
             *
             * For more information on how you can configure this file
             * see https://docs.magicmirror.builders/configuration/introduction.html
             * and https://docs.magicmirror.builders/modules/configuration.html
             */
            let config = {
            	address: "0.0.0.0", 	// Address to listen on, can be:
            							// - "localhost", "127.0.0.1", "::1" to listen on loopback interface
            							// - another specific IPv4/6 to listen on a specific interface
            							// - "0.0.0.0", "::" to listen on any interface
            							// Default, when address config is left out or empty, is "localhost"
            	port: 8080,
            	basePath: "/", 	// The URL path where MagicMirror² is hosted. If you are using a Reverse proxy
            					// you must set the sub path here. basePath must end with a /
            	ipWhitelist: [] 	// Set [] to allow all IP addresses
            															// or add a specific IPv4 of 192.168.1.5 :
            															// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
            															// or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format :
            															// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],
            
            	useHttps: false, 		// Support HTTPS or not, default "false" will use HTTP
            	httpsPrivateKey: "", 	// HTTPS private key path, only require when useHttps is true
            	httpsCertificate: "", 	// HTTPS Certificate path, only require when useHttps is true
            
            
            S 2 Replies Last reply Reply Quote 0
            • S Offline
              sdetweil @kusselin
              last edited by

              @kusselin pm2 logs --lines=50
              not good to install under root

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              kusselinK 1 Reply Last reply Reply Quote 0
              • S Offline
                sdetweil @kusselin
                last edited by

                @kusselin but if you are running in a container

                the the mm.sh script should be running as server
                as there is no ui on a container

                npm run server

                not

                npm start

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                1 Reply Last reply Reply Quote 0
                • kusselinK Offline
                  kusselin @sdetweil
                  last edited by kusselin

                  @sdetweil said in MagicMirror install on proxmox LXC Container?:

                  @kusselin pm2 logs --lines=50
                  not good to install under root

                  Hello, thank you for the tips…o.k. under root this is nuicht so good…
                  Again from the beginning…I install ubuntu 22.04 standard in a LXC container. I have also created the container by default. This has also all worked great. After that I started the container.

                  So when I am on the console it is so that I log in with root and pass. But that is not so good.
                  So I have now created a standard user with pass. Habs then times made as on Rasoian with user “pi” udn the default password for it. To test!

                  So, now I log in with user “pi” and the default password…now I stand on the “prompt”

                  login as: pi
                  pi@192.168.200.74's password:
                  Welcome to Ubuntu 22.04.1 LTS (GNU/Linux 5.15.35-1-pve x86_64)
                  
                   * Documentation:  https://help.ubuntu.com
                   * Management:     https://landscape.canonical.com
                   * Support:        https://ubuntu.com/advantage
                  Last login: Sat Oct 15 19:06:04 2022 from 192.168.1.236
                  pi@MagicMirror-live:~$ ^C
                  pi@MagicMirror-live:~$
                  
                  

                  Then I take the script from you here:

                  bash -c  "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/raspberry.sh)"
                  

                  So and if I then start your script via Console then comes the message “[sudo] password or pi”.

                  pi@MagicMirror-live:~$ bash -c  "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/raspberry.sh)"
                  
                  $$\      $$\                     $$\           $$\      $$\ $$\                                          $$$$$$\
                  $$$\    $$$ |                    \__|          $$$\    $$$ |\__|                                        $$  __$$\
                  $$$$\  $$$$ | $$$$$$\   $$$$$$\  $$\  $$$$$$$\ $$$$\  $$$$ |$$\  $$$$$$\   $$$$$$\   $$$$$$\   $$$$$$\  \__/  $$ |
                  $$\$$\$$ $$ | \____$$\ $$  __$$\ $$ |$$  _____|$$\$$\$$ $$ |$$ |$$  __$$\ $$  __$$\ $$  __$$\ $$  __$$\  $$$$$$  |
                  $$ \$$$  $$ | $$$$$$$ |$$ /  $$ |$$ |$$ /      $$ \$$$  $$ |$$ |$$ |  \__|$$ |  \__|$$ /  $$ |$$ |  \__|$$  ____/
                  $$ |\$  /$$ |$$  __$$ |$$ |  $$ |$$ |$$ |      $$ |\$  /$$ |$$ |$$ |      $$ |      $$ |  $$ |$$ |      $$ |
                  $$ | \_/ $$ |\$$$$$$$ |\$$$$$$$ |$$ |\$$$$$$$\ $$ | \_/ $$ |$$ |$$ |      $$ |      \$$$$$$  |$$ |      $$$$$$$$\
                  \__|     \__| \_______| \____$$ |\__| \_______|\__|     \__|\__|\__|      \__|       \______/ \__|      \________|
                                         $$\   $$ |
                                         \$$$$$$  |
                                          \______/
                  
                  install log being saved to /home/pi/install.log
                  Installing helper tools ...
                  [sudo] password for pi:
                  
                  

                  But you just said that the installation under “root” (sudo) is not good? Yes what is right now? What do I have to do now?

                  Do I have to insert “su” here then??

                  I don’t have a “sudo” password for pi - how do I create it?

                  Do I have to log in again with “pi” and the default pass and then create a “root” pass for pi?

                  and if I then take the root password from my created LXC container, it always comes “sorry try again”.

                  [sudo] password for pi:
                  Sorry, try again.
                  [sudo] password for pi:
                  
                  

                  What am I doing wrong here?

                  This is what I do not understand and do not know. Can you please describe me this in understandable sentences briefly how I have to proceed with the installation?

                  Thank you

                  1 Reply Last reply Reply Quote 0
                  • kusselinK Offline
                    kusselin
                    last edited by kusselin

                    so installed again under “pi”…

                    Commands executed by you here the result:

                    login as: pi
                    pi@192.168.200.74's password:
                    Welcome to Ubuntu 22.04.1 LTS (GNU/Linux 5.15.35-1-pve x86_64)
                    
                     * Documentation:  https://help.ubuntu.com
                     * Management:     https://landscape.canonical.com
                     * Support:        https://ubuntu.com/advantage
                    Last login: Sun Oct 16 09:53:33 2022 from 192.168.1.236
                    pi@MagicMirror-live:~$ cd MagicMirror
                    pi@MagicMirror-live:~/MagicMirror$ pm2 start MagicMirror
                    [PM2] Applying action restartProcessId on app [MagicMirror](ids: [ 0 ])
                    [PM2] [MagicMirror](0) ✓
                    [PM2] Process successfully started
                    ┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
                    │ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
                    ├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
                    │ 0  │ MagicMirror        │ fork     │ 143  │ online    │ 0%       │ 4.0kb    │
                    └────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
                    pi@MagicMirror-live:~/MagicMirror$ pm2 status
                    ┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
                    │ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
                    ├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
                    │ 0  │ MagicMirror        │ fork     │ 308  │ online    │ 0%       │ 3.0mb    │
                    └────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
                    pi@MagicMirror-live:~/MagicMirror$ pm2 start MagicMirror
                    [PM2] Applying action restartProcessId on app [MagicMirror](ids: [ 0 ])
                    [PM2] [MagicMirror](0) ✓
                    [PM2] Process successfully started
                    ┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
                    │ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
                    ├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
                    │ 0  │ MagicMirror        │ fork     │ 363  │ online    │ 0%       │ 4.0kb    │
                    └────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
                    pi@MagicMirror-live:~/MagicMirror$
                    
                    

                    If I now enter the following in the browser (Mozilla) then comes network overrun :-(

                    http://192.168.200.74:8080

                    Image 001.png

                    I don´t know whta i can do :-(

                    her my config

                    /* MagicMirror² Config Sample
                     *
                     * By Michael Teeuw https://michaelteeuw.nl
                     * MIT Licensed.
                     *
                     * For more information on how you can configure this file
                     * see https://docs.magicmirror.builders/configuration/introduction.html
                     * and https://docs.magicmirror.builders/modules/configuration.html
                     */
                    let config = {
                    	address: "0.0.0.0", 	// Address to listen on, can be:
                    							// - "localhost", "127.0.0.1", "::1" to listen on loopback interface
                    							// - another specific IPv4/6 to listen on a specific interface
                    							// - "0.0.0.0", "::" to listen on any interface
                    							// Default, when address config is left out or empty, is "localhost"
                    	port: 8080,
                    	basePath: "/", 	// The URL path where MagicMirror² is hosted. If you are using a Reverse proxy
                    					// you must set the sub path here. basePath must end with a /
                    	ipWhitelist: [], 	// Set [] to allow all IP addresses
                    															// or add a specific IPv4 of 192.168.1.5 :
                    															// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
                    															// or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format :
                    															// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],
                    
                    	useHttps: false, 		// Support HTTPS or not, default "false" will use HTTP
                    	httpsPrivateKey: "", 	// HTTPS private key path, only require when useHttps is true
                    	httpsCertificate: "", 	// HTTPS Certificate path, only require when useHttps is true
                    
                    	language: "de",
                    	locale: "de-DE",
                    	logLevel: ["INFO", "LOG", "WARN", "ERROR"], // Add "DEBUG" for even more logging
                    	timeFormat: 24,
                    	units: "metric",
                    	// serverOnly:  true/false/"local" ,
                    	// local for armv6l processors, default
                    	//   starts serveronly and then starts chrome browser
                    	// false, default for all NON-armv6l devices
                    	// true, force serveronly mode, because you want to.. no UI on this device
                    
                    	modules: [
                    		{
                    			module: "alert",
                    		},
                    		{
                    			module: "updatenotification",
                    			position: "top_bar"
                    		},
                    		{
                    			module: "clock",
                    			position: "top_left"
                    		},
                    		{
                    			module: "calendar",
                    			header: "US Holidays",
                    			position: "top_left",
                    			config: {
                    				calendars: [
                    					{
                    						symbol: "calendar-check",
                    						url: "webcal://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.ics"
                    					}
                    				]
                    			}
                    		},
                    		{
                    			module: "compliments",
                    			position: "lower_third"
                    		},
                    		{
                    			module: "weather",
                    			position: "top_right",
                    			config: {
                    				weatherProvider: "openweathermap",
                    				type: "current",
                    				location: "New York",
                    				locationID: "5128581", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
                    				apiKey: "YOUR_OPENWEATHER_API_KEY"
                    			}
                    		},
                    		{
                    			module: "weather",
                    			position: "top_right",
                    			header: "Weather Forecast",
                    			config: {
                    				weatherProvider: "openweathermap",
                    				type: "forecast",
                    				location: "New York",
                    				locationID: "5128581", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
                    				apiKey: "YOUR_OPENWEATHER_API_KEY"
                    			}
                    		},
                    		{
                    			module: "newsfeed",
                    			position: "bottom_bar",
                    			config: {
                    				feeds: [
                    					{
                    						title: "New York Times",
                    						url: "https://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml"
                    					}
                    				],
                    				showSourceTitle: true,
                    				showPublishDate: true,
                    				broadcastNewsFeeds: true,
                    				broadcastNewsUpdates: true
                    			}
                    		},
                    	]
                    };
                    
                    /*************** DO NOT EDIT THE LINE BELOW ***************/
                    if (typeof module !== "undefined") {module.exports = config;}
                    
                    

                    installed now is MagicMirror here

                    /home/pi/MagicMirror
                    
                    1 Reply Last reply Reply Quote 0
                    • kusselinK Offline
                      kusselin
                      last edited by

                      When everyone have proxmox…please install it and give me feedback how you installed it.
                      Thanks a lot

                      S 1 Reply Last reply Reply Quote 0
                      • S Offline
                        sdetweil @kusselin
                        last edited by sdetweil

                        @kusselin

                        change the script that starts mm from

                        npm start
                        to
                        npm run server

                        a container has no desktop,
                        npm start tries to load the graphical UI using electron.

                        npm run server

                        just starts the server side, for external browsers to access

                        I can’t tell what that error is, but the internet has moved to https connections by default, and many browsers warn when accessing http sites like MagicMirror is running.

                        so you either have to accept the warning, or find a way in the browser to disable to message

                        https setup requires a certificate, which is not free.

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 0
                        • kusselinK Offline
                          kusselin
                          last edited by

                          hi sdetweil, sorry my Linux knowledge is not good.

                          Can you explain me how to change the script udn where in the script?

                          Is my basic installation but with user “pi” so correct

                          S 1 Reply Last reply Reply Quote 0
                          • 1
                          • 2
                          • 3
                          • 4
                          • 1 / 4
                          • First post
                            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