Yeah this one’s pretty common, and it’s usually not the app itself, it’s the system struggling to pull Docker images.
That error basically means ZimaOS tried multiple mirrors and couldn’t download the image at all.
A few things to check (keep it simple):
First, network/DNS, this is the biggest one
If DNS is slow or blocked, pulls just hang around 5% then fail
Try switching your router DNS to something solid like Google (8.8.8.8) or Cloudflare (1.1.1.1)
Try a quick sanity check
Open Terminal and pull something manually:
docker pull hello-world
If that fails > it’s definitely network / DNS / firewall, not the App Store
Check time/date on the system
If it’s off, TLS can fail silently during image pulls
If you’re behind strict firewall / ISP filtering
Some registries or mirrors can get blocked > same symptom
Also worth noting, ZimaOS App Store is just Docker under the hood, so if Docker can’t pull, nothing in the App Store will install.
If that docker pull hello-world works fine, then we look deeper. If it fails, you’ve already found the root cause.
I’ve NEVER had any success pulling apps from the App Store. I have always had to do a custom install for some reason. And even then sometimes I still run into issues. I’m struggling right now because I can’t get Spoolman installed via the app store or those a custom install. I figured maybe it was time to download portainer since I’m not good at this and I can’t get that to install either. To be clear, they download just fine but when I go to their port they never actually start up. Any ideas?
That actually sounds different to the original issue.
If the images are downloading fine but nothing loads on the port, then the problem isn’t the App Store, it’s that the containers aren’t starting properly or aren’t binding to the port.
First thing I’d check is whether the containers are even running:
docker ps -a
Look at the STATUS column
“Exited” or restarting > something inside the container is failing
“Up” but no access > likely port or network issue
Then check logs for one of the apps that won’t start:
docker logs <container_name>
That will usually tell you exactly why it’s failing.
Couple of common causes on ZimaOS:
Port already in use by another container
Volume path permissions under /DATA/AppData
App expects config/env vars that weren’t set in the App Store template
Container starts but binds to localhost only (so you can’t access it externally)
Also worth checking what ports are actually exposed:
docker ps
Make sure you see something like 0.0.0.0:PORT-> inside the PORTS column.
Right now I wouldn’t reinstall anything yet, you’ll just hit the same issue again. The logs will point straight to the cause.
x@ZimaOS:~ ➜ $ docker ps -a
WARNING: Error loading config file: open /DATA/.docker/config.json: permission denied
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get “http://%2Fvar%2Frun%2Fdocker.sock/v1.47/containers/json?all=1”: dial unix /var/run/docker.sock: connect: permission denied
That should at least solve some permissions problems since your user is now in the docker group. Notice that /var/run/docker.sock has docker group read/write permissions, and you now are part of the group, so access to it should be allowed. Now, will that solves all the problems, I am not certain.
x@ZimaOS:~ ➜ $ docker ps -a
WARNING: Error loading config file: open /DATA/.docker/config.json: permission denied
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
It looks as we still have a permissions problem on the DATA directory as it is owned by root and allowed write/execute access only by root and the root group can only execute.
I am not knowledgeable enough to know if changing the ownership of DATA to $USER:$USER recursively would cause even greater problems down the line. I am still waiting on my Zimaboard 2 to arrive and get to know it better. It would be better if docker would bind that DATA directory path to a directory outside the container to the userspace instead of rootspace in the container. All sorts of issues may happen when you do that. I will have to give way to someone who knows Docker more than I do and the way ZimaOS deploys Docker apps.
I think your thinking is actually reasonable here because it definitely does look permission-related somewhere in the stack.
I’d just be very careful changing ownership of /DATA recursively on ZimaOS though, because a lot of the system, Docker storage and app management expects root ownership there by design.
From what I’ve seen, when containers download correctly but the apps themselves fail to load, it’s usually more specific than the whole /DATA directory ownership itself. Things like:
a broken bind mount
stale storage path
UID/GID mismatch inside the container
corrupted app config
permissions on a specific appdata folder
can all cause very similar symptoms.
Your point about bind mounts and container/user mapping is definitely valid though. I think checking the actual ownership/permissions of the specific app folders under /DATA/AppData/ is probably safer than changing /DATA globally.
Interested to see what you find once your ZimaBoard 2 arrives because these kinds of Docker/storage edge cases are becoming more common on newer ZimaOS builds.