bastilimbach / docker-MagicMirror

Docker image for the Magic Mirror 2 project by Michael Teeuw.
https://hub.docker.com/r/bastilimbach/docker-magicmirror/
MIT License
186 stars 54 forks source link

Docker mm update #19

Closed bachoo786 closed 5 years ago

bachoo786 commented 5 years ago

Hi

I have just installed mm using your docker image which is supposed to be the latest one as I checked in the docker hub that your files were updated 2 days ago.

However I get a message regarding updating my mm. I thought I had the latest one released 2 days ago i.e. 2.7.1. Can you please help ? I have already deleted the image on portainer and pulled the latest one but still no joy.

Also how do I check my mm version ? Do I have to login into mm container ? If yes what is the username ?

Thank you again.

bastilimbach commented 5 years ago

Hi, I just checked the Travis CI builds and it fails because it couldn't find Electron v3.0.13 for linux-armv6l:

/opt/magic_mirror/node_modules/electron/install.js:49
  throw err
  ^
Error: Failed to find Electron v3.0.13 for linux-armv6l at https://github.com/electron/electron/releases/download/v3.0.13/electron-v3.0.13-linux-armv6l.zip
    at Request.<anonymous> (/opt/magic_mirror/node_modules/nugget/index.js:169:61)
    at emitOne (events.js:115:13)
    at Request.emit (events.js:210:7)
    at Request.onRequestResponse (/opt/magic_mirror/node_modules/request/request.js:1062:10)
    at emitOne (events.js:115:13)
    at ClientRequest.emit (events.js:210:7)
    at HTTPParser.parserOnIncomingClient [as onIncoming] (_http_client.js:564:21)
    at HTTPParser.parserOnHeadersComplete (_http_common.js:116:23)
    at TLSSocket.socketOnData (_http_client.js:453:20)
    at emitOne (events.js:115:13)
The command '/bin/sh -c npm install --unsafe-perm --silent' returned a non-zero code: 1
The command "docker build -t $DOCKER_USER/docker-magicmirror:raspberry -f ./raspberry/Dockerfile ." exited with 1.

Therefore Travis CI didn't push a new version to the Docker Hub. I'll check what the corse for this is.

trombonekenny commented 5 years ago

Any progress on this? Thanks.

Tezzlicious commented 5 years ago

Hope this will be fixed soon. Thanks for all efforts.

ax42 commented 5 years ago

I am getting this on the non-armhf build as well.

ax42 commented 5 years ago

Any update?

idoodler commented 5 years ago

Any update on this?

khassel commented 5 years ago

as long as this is not solved here you can use my setup.

idoodler commented 5 years ago

@khassel Thx, but the container is restarting every 5 to 10 seconds. I'll stick to this right now.

bastilimbach commented 5 years ago

Sorry for the late response. I’ll take another look at this.

bastilimbach commented 5 years ago

@trombonekenny @Tezzlicious @ax42 @khassel @idoodler I provided a fix for the issue in PR #25. The image was successfully updated. Could someone please verify, that everything works as expected?

idoodler commented 5 years ago

@bastilimbach This is not working on my side.

I changed FROM bastilimbach/docker-magicmirror:raspberry to FROM bastilimbach/docker-magicmirror:latest and I am getting the error no matching manifest for linux/arm64 in the manifest list entries

bastilimbach commented 5 years ago

@idoodler Ah probably because I only added arm and not arm64. Will add that to the travis build

bastilimbach commented 5 years ago

@idoodler See commit fad5dea42c636fe3139501255c5ebe07d93a540c

Could you please try again after Travis pushed the image?

bastilimbach commented 5 years ago

This is the output of manifest inspect. Looks good:

Created manifest list docker.io/bastilimbach/docker-magicmirror:latest
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
   "manifests": [
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 3891,
         "digest": "sha256:1489c63d25972d6cbfb2104b9dbcac1fb5cec3baff3002c97220f2b1929140c9",
         "platform": {
            "architecture": "amd64",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 3891,
         "digest": "sha256:1489c63d25972d6cbfb2104b9dbcac1fb5cec3baff3002c97220f2b1929140c9",
         "platform": {
            "architecture": "arm",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 3891,
         "digest": "sha256:1489c63d25972d6cbfb2104b9dbcac1fb5cec3baff3002c97220f2b1929140c9",
         "platform": {
            "architecture": "arm64",
            "os": "linux"
         }
      }
   ]
}
idoodler commented 5 years ago

@bastilimbach I am not using plain docker, but balena-cloud. It looks like your image is working again. But I do have issues execute RUN chmod +x /opt/moduleInstall.sh the following Dockerfile.

Issue: panic: standard_init_linux.go:175: exec user process caused "exec format error" [recovered]

FROM bastilimbach/docker-magicmirror:latest

COPY ./config /opt/magic_mirror/config
COPY ./modules /opt/magic_mirror/modules
COPY ./moduleInstall.sh /opt

RUN chmod +x /opt/moduleInstall.sh
RUN /opt/moduleInstall.sh
RUN apt-get update && apt-get install -y libraspberrypi-bin 
idoodler commented 5 years ago

@bastilimbach I am running on a Raspberry Pi 3 B+ (I won't response the next few hours because I have to sleep now)

khassel commented 5 years ago

couldn't test earlier, now running on a raspi3 doesn't work for me, getting the standard_init_linux.go:211: exec user process caused "exec format error" error so it seems this image is not build for arm

pi@raspberrypi3:~ $ docker images
REPOSITORY                        TAG                 IMAGE ID            CREATED             SIZE
bastilimbach/docker-magicmirror   arm                 bb905b257622        29 hours ago        1.19GB
bastilimbach/docker-magicmirror   latest              bb905b257622        29 hours ago        1.19GB

anyone with the same problem?

khassel commented 5 years ago

Looking into the travis-file: Afaik you are building 3 times the same image for the architecture the travis job is running on, probably amd64.

bastilimbach commented 5 years ago

Mh, thats strange. I thought with the following line I would configure qemu and therefore compile in arm. Used to do that also with the old raspberry pi image. Maybe I need to add a --arch to the docker build command:

docker run --rm --privileged multiarch/qemu-user-static:register --reset

I will open a new issue.