Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/containers/fuse-overlayfs
FUSE implementation for overlayfs
https://github.com/containers/fuse-overlayfs
containers fuse overlay rootless-containers
Last synced: 7 days ago
JSON representation
FUSE implementation for overlayfs
- Host: GitHub
- URL: https://github.com/containers/fuse-overlayfs
- Owner: containers
- License: gpl-2.0
- Created: 2018-07-12T22:08:42.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2024-08-18T00:33:10.000Z (3 months ago)
- Last Synced: 2024-10-28T12:05:50.151Z (16 days ago)
- Topics: containers, fuse, overlay, rootless-containers
- Language: C
- Homepage:
- Size: 983 KB
- Stars: 528
- Watchers: 20
- Forks: 84
- Open Issues: 25
-
Metadata Files:
- Readme: README.md
- Changelog: NEWS
- License: COPYING
- Code of conduct: CODE-OF-CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
fuse-overlayfs
===========An implementation of overlay+shiftfs in FUSE for rootless containers.
Usage:
=======================================================```
$ fuse-overlayfs -o lowerdir=lowerdir/a:lowerdir/b,upperdir=up,workdir=workdir merged
```Specify a different UID/GID mapping:
```
$ fuse-overlayfs -o uidmapping=0:10:100:100:10000:2000,gidmapping=0:10:100:100:10000:2000,lowerdir=lowerdir/a:lowerdir/b,upperdir=up,workdir=workdir merged
```Requirements:
=======================================================If you are not using the static build as explained in the next chapter, your system needs `libfuse` > v3.2.1.
* On Fedora: `dnf install fuse3-devel`
* On Ubuntu > v19.04: `apt install libfuse3-dev`Also, please note that, when using `fuse-overlayfs` **from a user namespace**
(for example, when using rootless `podman`) a Linux Kernel > v4.18.0 is required.Static Build:
=======================================================This project provides a convenient way to automatically perform a static build using a container.
The result is a self-contained binary without dependencies, that can be copied across hosts.1. Install `buildah` as explained [here](https://github.com/containers/buildah/blob/master/install.md);
2. Both the build and deploy host require the special device `/dev/fuse`; there are a few ways to obtain it:
* install `fuse2` or `fuse3` using the package manager of your choice (dnf, apt, pacman, etc):
the install script will usually create the device automatically; or
* manually create the device with the command `mknod /dev/fuse -m 0666 c 10 229`
(see [this code](https://github.com/libfuse/libfuse/blob/f0e08cc700d629da2d46def8b620b0ed858cc0d9/util/install_helper.sh#L35))3. Clone this repository, and switch to the top-level folder containing the file "`Containerfile.static.ubuntu`";
4. Launch the build with the command (note the single dot `.` at the end):
```
buildah bud -v $PWD:/build/fuse-overlayfs -t fuse-overlayfs -f ./Containerfile.static.ubuntu .
```5. Copy the resulting binary to your host:
```
sudo cp fuse-overlayfs /usr/bin/
```