Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make master work #53

Open
wants to merge 63 commits into
base: old
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
104a0a2
Improve integration testing
sapk Dec 15, 2017
2daab85
Setup make test-coverage
sapk Dec 15, 2017
8d7b1ab
Refactor to store common code in separate repo (#37)
sapk Mar 22, 2018
1f54702
Fix make deps
sapk Mar 22, 2018
05d7933
Use label for maintainer
sapk Mar 22, 2018
912e60c
Fix make deps dev-depx ^^
sapk Mar 22, 2018
a88e1a7
Migrate to more common base
sapk Mar 23, 2018
6a3ee72
Remove un-necessary step
sapk Dec 13, 2017
ada1ed3
update vendor
sapk Mar 23, 2018
545e516
Fix gocovmerge path
sapk Mar 23, 2018
98b32bd
more generic
sapk Mar 23, 2018
f52acf1
Update golang version
sapk Mar 23, 2018
06fd547
Improve common code
sapk Mar 23, 2018
db88261
Improve testing
sapk Mar 23, 2018
70e72fb
Move mountUniqName to custom config
sapk Mar 23, 2018
928c8dc
Remove VolumeURI specific and move to more common base
sapk Mar 23, 2018
2f903db
Add test for error
sapk Mar 23, 2018
7871b1c
Fix tests
sapk Mar 23, 2018
2928d2d
Remove event IsValidURI
sapk Mar 23, 2018
e041f73
Add remove test to integration tests.
sapk Mar 26, 2018
b6d4f57
Upgrade common base to fix #39 + fmt
sapk Mar 26, 2018
7d63cb4
subdir support
trajano Mar 27, 2018
37d64d8
Additional tests
trajano Mar 27, 2018
6b55157
Fix error
trajano Mar 27, 2018
3b3640b
Update tools_test.go
trajano Mar 27, 2018
db2dc6f
Changed expectation
trajano Mar 27, 2018
5b562ac
Be more strict to validate uri + support idna
sapk Mar 27, 2018
e47420f
use sub tests (#41)
sapk Mar 27, 2018
0649749
Rework integration tests
sapk Mar 27, 2018
441bd8f
Add missing dep
sapk Mar 27, 2018
642a643
Test managed plugin + various improvement
sapk Mar 27, 2018
29c5de0
Add subvol tests
sapk Mar 27, 2018
38792e9
Using shot tests
sapk Mar 27, 2018
53f462d
Add subdir to README
sapk Mar 27, 2018
e4060a9
Add docs for versionned managed plugin.
sapk Mar 28, 2018
4ed777a
Update README.md
sapk Mar 28, 2018
1fbff9d
Information on how to set up using systemd (#42)
trajano Nov 16, 2018
728351d
Migrate to go mod (#47)
sapk Nov 16, 2018
683e022
refactor: move to zerolog
sapk Dec 2, 2018
4f6c1ef
refactor: fix zerolog interface
sapk Dec 2, 2018
d11bd79
Add debug info
sapk Dec 2, 2018
dbb653a
fix:missing error check
sapk Dec 2, 2018
f15d05b
fix: merge
sapk Dec 2, 2018
5338c7c
vendor: update
sapk Dec 2, 2018
c8fac76
travis: add test-integration
sapk Dec 2, 2018
e2e4bb4
vendor: remove submodule config
sapk Dec 2, 2018
d1b9175
vendor: re-add via go mod vendor
sapk Dec 2, 2018
99f4049
make: fix integration test command
sapk Dec 2, 2018
639f22e
docker: fix import path
sapk Dec 2, 2018
f8a9070
makefile: fix format
sapk Dec 2, 2018
911de57
docker: fix import path
sapk Dec 2, 2018
059dbc5
travis: sudo integration
sapk Dec 2, 2018
43dd466
travis: sudo integration
sapk Dec 2, 2018
2510ba9
travis: sudo integration
sapk Dec 2, 2018
6f36193
vendor: update
sapk Dec 3, 2018
168a880
travis: update gluster
sapk Dec 3, 2018
36b1e1f
travis: add gluster key
sapk Dec 3, 2018
ad0db2b
travis: fix gluster ppa
sapk Dec 3, 2018
f5bce84
travis: add more gpg gluster key
sapk Dec 3, 2018
a89a437
travis: add more gpg gluster key
sapk Dec 3, 2018
e7b8d12
vendor: update
sapk Dec 3, 2018
8b2ba93
travis: add debug command
sapk Dec 3, 2018
8b11ae2
travis: upgrade gluster to 3.13
sapk Dec 3, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
63 changes: 0 additions & 63 deletions .gitmodules

This file was deleted.

28 changes: 22 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,36 +6,53 @@ addons:
apt:
packages:
- upx-ucl

os:
- linux
# - osx

go:
- 1.8
- 1.9
- "1.10"
- "1.11"

env:
- GO111MODULE=on

before_install:
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- curl -fsSL http://download.gluster.org/pub/gluster/glusterfs/3.10/rsa.pub | sudo apt-key add -
- gpg --keyserver keyserver.ubuntu.com --recv 0x13E01B7B3FE869A9
- gpg --export --armor 0x13E01B7B3FE869A9 | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64] http://ppa.launchpad.net/gluster/glusterfs-3.13/ubuntu xenial main"
# - sudo add-apt-repository "deb [arch=amd64] http://ppa.launchpad.net/gluster/glusterfs-3.10/ubuntu $(lsb_release -cs) main"
# - sudo add-apt-repository ppa:gluster/glusterfs-3.10 #Maximum version with trusty builds
# - curl -fsSL http://download.gluster.org/pub/gluster/glusterfs/LATEST/rsa.pub | sudo apt-key add -
# - echo deb https://download.gluster.org/pub/gluster/glusterfs/LATEST/Debian/${DEBID}/${DEBARCH}/apt ${DEBVER} main > /etc/apt/sources.list.d/gluster.list
- sudo apt-get update
- sudo apt-get install -qq pkg-config fuse
- sudo modprobe fuse
- sudo chmod 666 /dev/fuse
- sudo apt-get -y install docker-ce glusterfs-client
- glusterfs --help
- glusterfs --usage

install:
- make dev-deps

script:
- make lint
- make build
- make test-unit
# - sudo -E bash -c 'eval "$(gimme $TRAVIS_GO_VERSION)" && make test'
- sudo -E bash -c 'eval "$(gimme $TRAVIS_GO_VERSION)" && make test-integration'
# - sudo ls -lah /var/log/glusterfs/
# - sudo cat /var/log/glusterfs/*
- ./docker-volume-gluster

after_success:
- bash <(curl -s https://codecov.io/bash) -f coverage.*
- make test-coverage

before_deploy:
- make compress
- make release
- docker --version
- make docker-plugin
Expand All @@ -50,7 +67,6 @@ deploy:
secure: SAD6luuJhgzS7ZavymCxLaTlCbxp9VQax0uf4ozWByt0uwsLKtDM4Je4c9z9bx40PmEBKOpSoso4umL4AcY1yrQ2UTMJD+GxedmqDnge2ibfhHZMTxeDkLF3JLsACfQmibNzN/+b9nNdgyzQYnB4+OvKOmEvtHWwNP7qOuU+9QTNK/rNt5MBXk29aJFL1/t3oIvCfHl1D96pssE6uVURcXiPGkgNcSLBUewYwPwqjGqgG/xu/lgQEwpW6AE4OfwJLpdGMR/V1DUNMNs47Gt7Vh+PBRm/M7cZUYyc+CRuXuSM+PKr9xlH8mFHu6IrcM4n5Sy94A7ldB5dfn9HA+WLXEOhSej3NB06sFkjITnKSWCVCGVzzXuH5CMiwBDRKmhFLunFe9Wcz52W2wIumesaNuZOm9LbiBV47UicggeiZkhar1tvjQoFgw6R57+Wxdhdon7fwVO3euRSH7fm0RyEN1PgO92U5/gHgOO+Khlsl3GPqWNgyqeh0Ej4Ke9mFB0VjO+a8uNAQlrp+v94kQSWqpXUD30/fnZhu+sBURJ1pikH/WAhcnKEvYk7Kq5/kSuYqO0dxxEDrHh00Gwo/uHhhnOp3BNe/v1/TseSS4FOxaLrbTKCDRU+B38bsi8FoZ7J68xK9dT19TF+6ZXqka1LNIyV4ITCjkRenHMfCWWrF78=
file_glob: true
file:
- "./docker-volume-gluster"
- build/*.tar.gz
skip_cleanup: true
on:
Expand Down
81 changes: 37 additions & 44 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ APP_VERSION=$(shell git describe --tags --abbrev=0)
APP_USERREPO=github.com/sapk
APP_PACKAGE=$(APP_USERREPO)/$(APP_NAME)


PLUGIN_USER ?= sapk
PLUGIN_NAME ?= plugin-gluster
PLUGIN_TAG ?= latest
Expand All @@ -22,22 +21,19 @@ LDFLAGS = \
-s -w \
-X main.Version=$(APP_VERSION) -X main.Branch=$(GIT_BRANCH) -X main.Commit=$(GIT_HASH) -X main.BuildTime=$(DATE)

FAKE_GOPATH = $(PWD)/.gopath
FAKE_PACKAGE = $(FAKE_GOPATH)/src/$(APP_PACKAGE)

GO15VENDOREXPERIMENT=1
GO111MODULE=on
DOC_PORT = 6060
#GOOS=linux

ERROR_COLOR=\033[31;01m
NO_COLOR=\033[0m
OK_COLOR=\033[32;01m
WARN_COLOR=\033[33;01m

GOPATH ?= $(HOME)/go

all: build compress done

build: deps clean format compile
build: clean format compile

docker-plugin: docker-rootfs docker-plugin-create

Expand Down Expand Up @@ -69,48 +65,44 @@ docker-plugin-enable:
@echo -e "$(OK_COLOR)==> Enable plugin ${PLUGIN_IMAGE}$(NO_COLOR)"
docker plugin enable ${PLUGIN_IMAGE}

set-build:
@if [ ! -d $(PWD)/.gopath/src/$(APP_USERREPO) ]; then mkdir -p $(PWD)/.gopath/src/$(APP_USERREPO); fi
@if [ ! -d $(PWD)/.gopath/src/$(APP_PACKAGE) ]; then ln -s $(PWD) $(PWD)/.gopath/src/$(APP_PACKAGE); fi

compile: set-build
compile:
@echo -e "$(OK_COLOR)==> Building...$(NO_COLOR)"
cd $(FAKE_PACKAGE) && GOPATH=$(FAKE_GOPATH) go build -v -ldflags "$(LDFLAGS)"
go build -v -ldflags "$(LDFLAGS)"

release: clean set-build deps format
release: clean format
@mkdir build
@echo -e "$(OK_COLOR)==> Building for linux 32 ...$(NO_COLOR)"
cd $(FAKE_PACKAGE) && GOPATH=$(FAKE_GOPATH) CGO_ENABLED=0 GOOS=linux GOARCH=386 go build -o build/${APP_NAME}-linux-386 -ldflags "$(LDFLAGS)"
CGO_ENABLED=0 GOOS=linux GOARCH=386 go build -o build/${APP_NAME}-linux-386 -ldflags "$(LDFLAGS)"
@echo -e "$(OK_COLOR)==> Trying to compress binary ...$(NO_COLOR)"
@upx --brute build/${APP_NAME}-linux-386 || upx-ucl --brute build/${APP_NAME}-linux-386 || echo -e "$(WARN_COLOR)==> No tools found to compress binary.$(NO_COLOR)"

@echo -e "$(OK_COLOR)==> Building for linux 64 ...$(NO_COLOR)"
cd $(FAKE_PACKAGE) && GOPATH=$(FAKE_GOPATH) GO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o build/${APP_NAME}-linux-amd64 -ldflags "$(LDFLAGS)"
GO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o build/${APP_NAME}-linux-amd64 -ldflags "$(LDFLAGS)"
@echo -e "$(OK_COLOR)==> Trying to compress binary ...$(NO_COLOR)"
@upx --brute build/${APP_NAME}-linux-amd64 || upx-ucl --brute build/${APP_NAME}-linux-amd64 || echo -e "$(WARN_COLOR)==> No tools found to compress binary.$(NO_COLOR)"

@echo -e "$(OK_COLOR)==> Building for linux arm ...$(NO_COLOR)"
cd $(FAKE_PACKAGE) && GOPATH=$(FAKE_GOPATH) CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=6 go build -o build/${APP_NAME}-linux-armv6 -ldflags "$(LDFLAGS)"
CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=6 go build -o build/${APP_NAME}-linux-armv6 -ldflags "$(LDFLAGS)"
@echo -e "$(OK_COLOR)==> Trying to compress binary ...$(NO_COLOR)"
@upx --brute build/${APP_NAME}-linux-armv6 || upx-ucl --brute build/${APP_NAME}-linux-armv6 || echo -e "$(WARN_COLOR)==> No tools found to compress binary.$(NO_COLOR)"

@echo -e "$(OK_COLOR)==> Building for darwin32 ...$(NO_COLOR)"
cd $(FAKE_PACKAGE) && GOPATH=$(FAKE_GOPATH) CGO_ENABLED=0 GOOS=darwin GOARCH=386 go build -o build/${APP_NAME}-darwin-386 -ldflags "$(LDFLAGS)"
CGO_ENABLED=0 GOOS=darwin GOARCH=386 go build -o build/${APP_NAME}-darwin-386 -ldflags "$(LDFLAGS)"
@echo -e "$(OK_COLOR)==> Trying to compress binary ...$(NO_COLOR)"
@upx --brute build/${APP_NAME}-darwin-386 || upx-ucl --brute build/${APP_NAME}-darwin-386 || echo -e "$(WARN_COLOR)==> No tools found to compress binary.$(NO_COLOR)"

@echo -e "$(OK_COLOR)==> Building for darwin64 ...$(NO_COLOR)"
cd $(FAKE_PACKAGE) && GOPATH=$(FAKE_GOPATH) CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o build/${APP_NAME}-darwin-amd64 -ldflags "$(LDFLAGS)"
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o build/${APP_NAME}-darwin-amd64 -ldflags "$(LDFLAGS)"
@echo -e "$(OK_COLOR)==> Trying to compress binary ...$(NO_COLOR)"
@upx --brute build/${APP_NAME}-darwin-amd64 || upx-ucl --brute build/${APP_NAME}-darwin-amd64 || echo -e "$(WARN_COLOR)==> No tools found to compress binary.$(NO_COLOR)"

# @echo -e "$(OK_COLOR)==> Building for win32 ...$(NO_COLOR)"
# cd $(FAKE_PACKAGE) && GOPATH=$(FAKE_GOPATH) CGO_ENABLED=0 GOOS=windows GOARCH=386 go build -o build/${APP_NAME}-win-386 -ldflags "$(LDFLAGS)"
# CGO_ENABLED=0 GOOS=windows GOARCH=386 go build -o build/${APP_NAME}-win-386 -ldflags "$(LDFLAGS)"
# @echo -e "$(OK_COLOR)==> Trying to compress binary ...$(NO_COLOR)"
# @upx --brute build/${APP_NAME}-win-386 || upx-ucl --brute build/${APP_NAME}-win-386 || echo -e "$(WARN_COLOR)==> No tools found to compress binary.$(NO_COLOR)"

# @echo -e "$(OK_COLOR)==> Building for win64 ...$(NO_COLOR)"
# cd $(FAKE_PACKAGE) && GOPATH=$(FAKE_GOPATH) CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o build/${APP_NAME}-win-amd64 -ldflags "$(LDFLAGS)"
# CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o build/${APP_NAME}-win-amd64 -ldflags "$(LDFLAGS)"
# @echo -e "$(OK_COLOR)==> Trying to compress binary ...$(NO_COLOR)"
# @upx --brute build/${APP_NAME}-win-amd64 || upx-ucl --brute build/${APP_NAME}-win-amd64 || echo -e "$(WARN_COLOR)==> No tools found to compress binary.$(NO_COLOR)"

Expand All @@ -120,7 +112,6 @@ release: clean set-build deps format
clean:
@if [ -x $(APP_NAME) ]; then rm $(APP_NAME); fi
@if [ -d build ]; then rm -R build; fi
@if [ -d $(FAKE_GOPATH) ]; then rm -R $(FAKE_GOPATH); fi
@rm -rf ./plugin

compress:
Expand All @@ -129,21 +120,27 @@ compress:

format:
@echo -e "$(OK_COLOR)==> Formatting...$(NO_COLOR)"
go fmt ./gluster/...
go fmt ./...

test: test-unit test-integration
@echo -e "$(OK_COLOR)==> Running test...$(NO_COLOR)"
gocovmerge coverage.unit.out coverage.inte.out > coverage.all
$(GOPATH)/bin/gocovmerge coverage.unit.out coverage.inte.out > coverage.all
# go tool cover -html=coverage.all -o coverage.html

test-unit: dev-deps deps format
test-unit: dev-deps format
@echo -e "$(OK_COLOR)==> Running unit tests...$(NO_COLOR)"
go vet ./gluster/... || true
go test -v -race -coverprofile=coverage.unit.out -covermode=atomic ./gluster/driver

test-integration: dev-deps deps format
test-integration: dev-deps format
@echo -e "$(OK_COLOR)==> Running integration tests...$(NO_COLOR)"
go test -v -timeout 1h -race -coverprofile=coverage.inte.out -covermode=atomic -coverpkg ./gluster/driver ./gluster/integration
GO111MODULE=off go test -v -timeout 1h -race -coverprofile=coverage.inte.out -covermode=atomic -coverpkg ./gluster/... ./gluster/integration

test-coverage: test
@echo -e "$(OK_COLOR)==> Uploading coverage ...$(NO_COLOR)"
curl -s https://codecov.io/bash | bash -s - -F unittests -f coverage.unit.out
curl -s https://codecov.io/bash | bash -s - -F integration -f coverage.inte.out
#Need CODECOV_TOKEN=:uuid

docs:
@echo -e "$(OK_COLOR)==> Serving docs at http://localhost:$(DOC_PORT).$(NO_COLOR)"
Expand All @@ -156,31 +153,27 @@ lint: dev-deps

dev-deps:
@echo -e "$(OK_COLOR)==> Installing developement dependencies...$(NO_COLOR)"
@go get github.com/nsf/gocode
@go get github.com/alecthomas/gometalinter
@go get github.com/dpw/vendetta #Vendoring
@go get github.com/wadey/gocovmerge
@$(GOPATH)/bin/gometalinter --install > /dev/null
@GO111MODULE=off go get github.com/nsf/gocode
@GO111MODULE=off go get github.com/wadey/gocovmerge
@GO111MODULE=off go get github.com/alecthomas/gometalinter
@GO111MODULE=off $(GOPATH)/bin/gometalinter --install > /dev/null

update-dev-deps:
@echo -e "$(OK_COLOR)==> Installing/Updating developement dependencies...$(NO_COLOR)"
go get -u github.com/nsf/gocode
go get -u github.com/alecthomas/gometalinter
go get -u github.com/dpw/vendetta #Vendoring
go get -u github.com/wadey/gocovmerge
$(GOPATH)/bin/gometalinter --install --update
GO111MODULE=off go get -u github.com/nsf/gocode
GO111MODULE=off go get -u github.com/wadey/gocovmerge
GO111MODULE=off go get -u github.com/alecthomas/gometalinter
GO111MODULE=off $(GOPATH)/bin/gometalinter --install --update

deps:
deps: dev-deps
@echo -e "$(OK_COLOR)==> Installing dependencies ...$(NO_COLOR)"
@git submodule update --init --recursive
# @$(GOPATH)/bin/vendetta -n $(APP_PACKAGE)
# @go get -d -v ./...
go get -v ./...
go mod vendor

update-deps: dev-deps
@echo -e "$(OK_COLOR)==> Updating all dependencies ...$(NO_COLOR)"
$(GOPATH)/bin/vendetta -n $(APP_PACKAGE) -u
#@go get -d -v -u ./...

go get -u -v ./...
go mod vendor

done:
@echo -e "$(OK_COLOR)==> Done.$(NO_COLOR)"
Expand Down
27 changes: 23 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# docker-volume-gluster [![License](https://img.shields.io/badge/license-MIT-red.svg)](https://github.com/sapk/docker-volume-gluster/blob/master/LICENSE) ![Project Status](http://img.shields.io/badge/status-alpha-red.svg)
# docker-volume-gluster [![License](https://img.shields.io/badge/license-MIT-red.svg)](https://github.com/sapk/docker-volume-gluster/blob/master/LICENSE) ![Project Status](http://img.shields.io/badge/status-beta-orange.svg)
[![GitHub release](https://img.shields.io/github/release/sapk/docker-volume-gluster.svg)](https://github.com/sapk/docker-volume-gluster/releases) [![Go Report Card](https://goreportcard.com/badge/github.com/sapk/docker-volume-gluster)](https://goreportcard.com/report/github.com/sapk/docker-volume-gluster)
[![codecov](https://codecov.io/gh/sapk/docker-volume-gluster/branch/master/graph/badge.svg)](https://codecov.io/gh/sapk/docker-volume-gluster)
master : [![Travis master](https://api.travis-ci.org/sapk/docker-volume-gluster.svg?branch=master)](https://travis-ci.org/sapk/docker-volume-gluster) develop : [![Travis develop](https://api.travis-ci.org/sapk/docker-volume-gluster.svg?branch=develop)](https://travis-ci.org/sapk/docker-volume-gluster)


Use GlusterFS as a backend for docker volume

Status : **proof of concept (working)**
Status : **beta (working)**

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

Expand All @@ -19,7 +19,7 @@ docker run -v test:/mnt --rm -ti ubuntu

## Create and Mount volume
```
docker volume create --driver sapk/plugin-gluster --opt voluri="<volumeserver>,<otherserver>,<otheroptionalserver>:<volumename>" --name test
docker volume create --driver sapk/plugin-gluster --opt voluri="<volumeserver>,<otherserver>,<otheroptionalserver>:<volumename></optional/sub/dir>" --name test
docker run -v test:/mnt --rm -ti ubuntu
```

Expand All @@ -29,7 +29,7 @@ volumes:
some_vol:
driver: sapk/plugin-gluster
driver_opts:
voluri: "<volumeserver>:<volumename>"
voluri: "<volumeserver>:<volumename></optional/sub/dir>"
```


Expand All @@ -43,6 +43,13 @@ docker plugin set sapk/plugin-gluster MOUNT_UNIQ=1 #Activate --mount-uniq
docker plugin enable sapk/plugin-gluster
```

## Install specific version
```
docker plugin install sapk/plugin-gluster:v1.0.11

# Full list of available tags : https://hub.docker.com/r/sapk/plugin-gluster/tags/
```



## Legacy plugin installation
Expand Down Expand Up @@ -82,6 +89,18 @@ Global Flags:
-v, --verbose Turns on verbose logging
```

#### Start daemon with systemd

This will enable execution of the daemon on bootup using systemd. On CentOS, this will require `glusterfs-fuse` package to be installed.

Extract the release file and copy the appropriate binary for your platform into `/usr/bin` and the [docker-volume-gluster.service](https://raw.githubusercontent.com/sapk/docker-volume-gluster/master/support/systemd/docker-volume-gluster.service) into `/etc/systemd/system`. Then reload the daemon. Use the following as a guide:

```
install -m 0755 -o root -g root /tmp/build/docker-volume-gluster-linux-amd64 /usr/bin/docker-volume-gluster
install -m 0644 -o root -g root /tmp/build/docker-volume-gluster/docker-volume-gluster.service /etc/systemd/system
systemctl daemon-reload
```

#### Create and Mount volume
```
docker volume create --driver gluster --opt voluri="<volumeserver>:<volumename>" --name test
Expand Down
Loading