summaryrefslogtreecommitdiff
path: root/vendor/github.com/docker/go-plugins-helpers/volume/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/docker/go-plugins-helpers/volume/README.md')
-rw-r--r--vendor/github.com/docker/go-plugins-helpers/volume/README.md36
1 files changed, 36 insertions, 0 deletions
diff --git a/vendor/github.com/docker/go-plugins-helpers/volume/README.md b/vendor/github.com/docker/go-plugins-helpers/volume/README.md
new file mode 100644
index 000000000..395aa643f
--- /dev/null
+++ b/vendor/github.com/docker/go-plugins-helpers/volume/README.md
@@ -0,0 +1,36 @@
+# Docker volume extension api.
+
+Go handler to create external volume extensions for Docker.
+
+## Usage
+
+This library is designed to be integrated in your program.
+
+1. Implement the `volume.Driver` interface.
+2. Initialize a `volume.Handler` with your implementation.
+3. Call either `ServeTCP` or `ServeUnix` from the `volume.Handler`.
+
+### Example using TCP sockets:
+
+```go
+ d := MyVolumeDriver{}
+ h := volume.NewHandler(d)
+ h.ServeTCP("test_volume", ":8080")
+```
+
+### Example using Unix sockets:
+
+```go
+ d := MyVolumeDriver{}
+ h := volume.NewHandler(d)
+ u, _ := user.Lookup("root")
+ gid, _ := strconv.Atoi(u.Gid)
+ h.ServeUnix("test_volume", gid)
+```
+
+## Full example plugins
+
+- https://github.com/calavera/docker-volume-glusterfs
+- https://github.com/calavera/docker-volume-keywhiz
+- https://github.com/quobyte/docker-volume
+- https://github.com/NimbleStorage/Nemo