containerd / continuity

A transport-agnostic, filesystem metadata manifest system
https://containerd.io
Apache License 2.0
145 stars 67 forks source link

Implement fuse filesystem mount #8

Open stevvooe opened 9 years ago

stevvooe commented 9 years ago

It would be nice to be able to mount a continuity manifest via fuse via command:

continuity mount --fuse <mount> <manifest> <root>

This would only serve files identified by the manifest and only if their hash matched. We use --fuse to allow other kinds of mount implementations (imagine http, tar, etc.). Such a command should take the same options required to map uids, links, etc (not defined yet).

jlhawn commented 8 years ago

This should enable records for special files too:

Your FUSE filesystem need not implement them, only report that they exist via dir entries and node attrs, the kernel will handle dispatching device requests to the proper driver (though major/minor mappings will likely be different between systems) and the kernel will also handle things like sockets and pipes. Gotta use the dev mount option though.

Discussed earlier IRL; Wasn't sure if I should open another issue since it's related to this one.

stevvooe commented 8 years ago

@jlhawn This should probably be another issue. The support for devs and sockets is shaky at this point.