@@ -20,6 +20,7 @@ Two access flows depending on the runtime:
2020- [ Semantic search] ( #semantic-search )
2121- [ ` bash/ ` virtual bash tool] ( #bash-virtual-bash-tool )
2222- [ Build from source] ( #build-from-source )
23+ - [ Docker and devcontainers] ( #docker-and-devcontainers )
2324- [ License] ( #license )
2425
2526## Install
@@ -152,6 +153,63 @@ cargo build --release
152153
153154Requires Rust 1.80 or newer.
154155
156+ ## Docker and devcontainers
157+
158+ ### Run smfs in Docker
159+
160+ Build the development image from this checkout:
161+
162+ ``` sh
163+ docker build -t smfs:dev .
164+ docker run --rm smfs:dev --help
165+ ```
166+
167+ Mount a Supermemory container inside Docker with FUSE enabled:
168+
169+ ``` sh
170+ docker run --rm -it \
171+ --device /dev/fuse \
172+ --cap-add SYS_ADMIN \
173+ -e SUPERMEMORY_API_KEY=" $SUPERMEMORY_API_KEY " \
174+ smfs:dev mount agent_memory --path /mnt/memory
175+ ```
176+
177+ The release Dockerfile uses the same installer as the shell quickstart:
178+
179+ ``` sh
180+ docker build -t smfs:release -f docker/Dockerfile.release .
181+ ```
182+
183+ When an official image is published, the same run flags apply:
184+
185+ ``` sh
186+ docker run --rm -it \
187+ --device /dev/fuse \
188+ --cap-add SYS_ADMIN \
189+ -e SUPERMEMORY_API_KEY=" $SUPERMEMORY_API_KEY " \
190+ ghcr.io/supermemoryai/smfs:latest mount agent_memory --path /mnt/memory
191+ ```
192+
193+ ### Use smfs inside a devcontainer
194+
195+ Open this repository in VS Code or Cursor and choose "Reopen in Container".
196+ The devcontainer builds the root ` Dockerfile ` , passes through ` SUPERMEMORY_API_KEY `
197+ and ` SUPERMEMORY_API_URL ` , and starts with ` smfs ` on ` PATH ` .
198+
199+ ### FUSE requirements
200+
201+ Docker runs Linux containers, so smfs uses the FUSE backend in Docker. The NFS
202+ backend is for macOS hosts and is not used inside Linux containers.
203+
204+ FUSE needs access to ` /dev/fuse ` and the ` SYS_ADMIN ` capability:
205+
206+ ``` sh
207+ --device /dev/fuse --cap-add SYS_ADMIN
208+ ```
209+
210+ If your Docker environment does not expose ` /dev/fuse ` , use a Linux host or a
211+ container runtime that supports FUSE devices.
212+
155213## License
156214
157215MIT. See [ ` LICENSE ` ] ( LICENSE ) .
0 commit comments