0

I am currently using a Docker container that requires squashfs to create the file system.

The container fails to start up correctly and displays this in the logs:

2024-02-01 08:09:53 mount: /mnt/sqfs: unknown filesystem type 'squashfs'.

To debug, I ran cat /proc/filesystems in the docker container and it did not list squashfs.

I saw in the release notes for version 4.27.0 of docker (latest as of this question's writing):

Bug fixes and enhancements

For all platforms:

  • [...]
  • Re-added kernel modules for btrfs, xfs, vfat, exfat, ntfs3, f2fs, squashfs, udf, 9p and autofs.

I learned from this Stack Overflow thread that

A Docker container cannot have a different filesystem list than their host machine

so I assumed my mac was missing squashfs.

I then installed squashfs with homebrew per this thread but it still doesn't work. Even after restarting docker, running cat /proc/filesystems in the docker container STILL does not list squashfs. It still also shows the error above as well.

How can I run a container requiring squashfs on an Intel Based Mac running Sonoma 14.3 and Docker Desktop for mac?


EDIT: Please Note, Versions 4.27.0 and 4.27.1 of Docker for mac have a known issue where docker crashes a few minutes after boot. Beware if you are planning on installing these versions of docker.


EDIT 2: Versions 4.27.2 of Docker for mac has fixed the errors in versinos 4.27.0 and 4.27.1. After installing it, I now see squashfs listed when I run cat /proc/filesystems in the docker container. My docker container still doesn't run properly though, and I now get a different error in my docker logs:

2024-02-13 11:54:40 mount: /mnt/sqfs: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error.
4
  • There is no equivalent. This looks a lot like an XY question - Are you asking what mounted file systems exist or what the entire menu of possible filesystem types the OS natively handles without third party additions? That’s the X interpretation of your question that might be better to just ask Y as “Has anyone gotten squashfs working in docker on macOS version 14.3 and any version of docker?”
    – bmike
    Commented Feb 1 at 15:09
  • I also was going to say FUSE has issues with Sonoma, but that seems to be sorted… github.com/osxfuse/osxfuse/issues/977
    – bmike
    Commented Feb 1 at 15:13
  • The actual issue I am trying to solve is getting a container requiring squashfs to run in Docker on an Intel Mac running Sonoma 14.3. I was hoping to find a way to confirm installing squashfsvia brew was successful / could be accessed by docker. I could change this question to instead be the "Y" part and make the "X" a separate question. I'm more familiar with Linux under the hood than mac, and so it would be nice to find a command that does list "the entire menu of possible filesystem types the OS natively handles".
    – Wimateeka
    Commented Feb 1 at 15:21
  • Awesome - if no one bites, I would recommend two distinct questions, one covering each topic succinctly. Those get far more answers than a “trying to do this thing” and also need help with “that other side-question”. Let’s see what happens next couple days…
    – bmike
    Commented Feb 1 at 19:16

1 Answer 1

0

The utility you're looking for is lsvfs(1), which "lists information about the currently loaded virtual file system modules." I don't know whether it would recognize the one you're asking about.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .