Skip to content

lorenzleutgeb/docker-volume-gcs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 

Repository files navigation

⚠️ This project is not maintained and comes without any warranties. Forks and contributions are welcome.


docker-volume-gcs

This is a Docker volume plugin that uses gcsfuse to provision Google Cloud Storage buckets as Docker volumes.

Once this plugin is set up you can access files stored on Google Cloud Storage from inside a Docker container as follows:

# Obviously, $bucket must be the name of your bucket.
$ docker run -ti -v $bucket:/data --volume-driver=gcs ubuntu

or create the volume with

# to mount a specific object, use ${bucket_name}/${object_name}
$ docker volume create --driver=gcs --name=${bucket_name}/${object_name}
# or to mount a whole bucket, just specify it's name
$ docker volume create --driver=gcs --name=${bucket_name}

Installation

$ go get github.com/lorenzleutgeb/docker-volume-gcs

Invocation

$ docker-volume-gcs [gcsfuse options] ROOT

The only argument for the plugin is the root directory to be used for mounts. It is mandatory and must be the last argument.

An example invocation would be

$ sudo docker-volume-gcs --key-file service-account.json --uid $UID --gid $GID --implicit-dirs /var/lib/docker/volumes/gcs

Known issues

Currently, docker-volume-gcs must be run as root user, because /run/docker/plugins is usually owned by root and it needs to create its socket there. gcsfuse will complain about being run as root, and you should pass --pid and --gid to avoid having everything owned by root.

About

A Docker volume plugin for Google Cloud Storage via gcsfuse

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages