Read the statement by Michael Teeuw here.
MM docker container problem with mac and linux
-
@tomasz2101 Try to set
ipWhitelist
to[ "127.0.0.1", "::ffff:127.0.0.1", "::1" ]
. If you want to access the mirror from your Linux or Mac machine add their respective IPs too. -
@raywo I know that this is strange behaviour of MM and your fix is not according to documentation. I tried that but that fix doesn’t work at all. Additional think is that I’am running container on my mac and i cannot access MM from mac. 192.168.1.176 is my mac local ip. I want to develop new module but i don’t want to do this on rpi.
var config = { address: "localhost", port: 8080, ipWhitelist: [ "127.0.0.1", "::ffff:127.0.0.1", "::1", "192.168.1.176"], language: "en", timeFormat: 24, units: "metric", modules: [ { module: "alert", }, { module: "updatenotification", position: "top_bar" }, { module: "clock", position: "top_left" }, ] }; /*************** DO NOT EDIT THE LINE BELOW ***************/ if (typeof module !== "undefined") {module.exports = config;}
-
@tomasz2101 Why is that not according to documentation?
I have a simliar setup like you. I run docker on my mac and access the mirror instance via my mac it works just fine.Maybe you should try it without creating your own docker image. Try the solution as described in the MagicMirror documentation.
-
@raywo i tried
docker run -d \ --publish 8080:8080 \ --restart always \ --volume ~/magic_mirror/config:/opt/magic_mirror/config \ --volume ~/magic_mirror/modules:/opt/magic_mirror/modules \ --name magic_mirror \ bastilimbach/docker-magicmirror
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 69efe710da85 bastilimbach/docker-magicmirror "/opt/magic_mirror/d…" Less than a second ago Up 2 seconds 0.0.0.0:8080->8080/tcp magic_mirror
docker logs -f magic_mirror
Starting MagicMirror: v2.1.3 Loading config ... WARNING! Could not find config file. Please create one. Starting with default configuration. Loading module helpers ... Initializing new module helper ... Module helper loaded: updatenotification No helper found for module: helloworld. All module helpers loaded. Starting server on port 8080 ... Server started ... Connecting socket for: updatenotification Sockets connected & modules started ... Ready to go! Please point your browser to: http://localhost:8080
cat config.js
var config = { address: "localhost", // Address to listen on, can be: port: 8080, ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1", "192.168.1.176"], language: "en", timeFormat: 24, units: "metric", modules: [ { module: "clock", position: "top_left" }, ] };
When im trying to access url http://localhost:8080/ in incognito i got always “localhost didn’t send any data” and there is no information in container about trying to access pare.
-
@tomasz2101 This looks okay to me. Although the log states
"WARNING! Could not find config file. Please create one. Starting with default configuration."
.
Where did you put yourconfig.js
file? Is it in~/magic_mirror/config
on your mac? -
@raywo The config.js.sample was created automatically. After that i copy it to config.js and restarted container but logs show:
Ready to go! Please point your browser to: http://localhost:8080 Starting MagicMirror: v2.1.3 Loading config ... Loading module helpers ... No helper found for module: clock. All module helpers loaded. Starting server on port 8080 ... Server started ... Sockets connected & modules started ... Ready to go! Please point your browser to: http://localhost:8080
-
@tomasz2101 And? Does it work?
-
@raywo no
-
@tomasz2101 In my
config.js
I put""
in theaddress
setting. I also have"::ffff:192.168.2.1/120"
included in myipWhitelist
. My home network is192.168.2.0
.my
config.js
var config = { address: "", // - "", "0.0.0.0", "::" to listen on any interface // Default, when address config is left out, is "localhost" port: 8080, ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.2.1/120", "192.168.2.110", "172.17.0.1"] /* module config */ }
-
@raywo thx a lot now it is working.
Also i had to do docker binding to localhost
my config:var config = { address: "", port: 8080, ipWhitelist: [], language: "en", timeFormat: 24, units: "metric", modules: [ { module: "clock", position: "top_left" } ] };