Sign inSign up

sapk/plugin-rclone

By sapk

•Updated almost 6 years ago

Use Rclone as a backend for docker volume

Plugin
5

4.9K

sapk/plugin-rclone repository overview

⁠docker-volume-rclone License Project Status

GitHub release Go Report Card codecov master : Travis master develop : Travis develop

Use Rclone as a backend for docker volume

Status : proof of concept (working)

Use Rclone cli in the plugin container so it depend on fuse on the host.

⁠Docker plugin (Easy method) Docker Pulls ImageLayers Size

docker plugin install sapk/plugin-rclone
docker volume create --driver sapk/plugin-rclone --opt config="$(base64 ~/.config/rclone/rclone.conf)" --opt remote=some-remote:bucket/path --name test
docker run -v test:/mnt --rm -ti ubuntu

⁠Build

make

⁠Start daemon

./docker-volume-rclone daemon
OR in a docker container
docker run -d --device=/dev/fuse:/dev/fuse --cap-add=SYS_ADMIN --cap-add=MKNOD  -v /run/docker/plugins:/run/docker/plugins -v /var/lib/docker-volumes/rclone:/var/lib/docker-volumes/rclone:shared sapk/docker-volume-rclone

For more advance params : ./docker-volume-rclone --help OR ./docker-volume-rclone daemon --help

Run listening volume drive deamon to listen for mount request

Usage:
  docker-volume-rclone daemon [flags]

Global Flags:
  -b, --basedir string   Mounted volume base directory (default "/var/lib/docker-volumes/rclone")
  -v, --verbose          Turns on verbose logging

⁠Create and Mount volume

docker volume create --driver rclone --opt config="$(base64 ~/.config/rclone/rclone.conf)" --opt remote=some-remote:bucket/path --name test
docker run -v test:/mnt --rm -ti ubuntu

⁠Docker-compose

volumes:
  some_vol:
    driver: sapk/plugin-rclone
    driver_opts:
      config: "$(base64 ~/.config/rclone/rclone.conf)"
      remote: "some-remote:bucket/path"

⁠Inspired from :

Tag summary

Content type

Plugin

Digest

Size

19 MB

Last updated

almost 6 years ago

docker plugin install sapk/plugin-rclone