docker: add cluster mode

This commit is contained in:
Chris Lu 2020-02-26 16:46:29 -08:00
parent 0156e2975a
commit c4de814347
5 changed files with 114 additions and 58 deletions

View file

@ -2,7 +2,18 @@ all: gen
.PHONY : gen
gen:
gen: dev
build:
cd ../weed; GOOS=linux go build; mv weed ../docker/
docker-compose -f local-dev-compose.yml -p seaweedfs up
docker build --no-cache -t chrislusf/seaweedfs:local -f Dockerfile.go_build .
rm ./weed
dev: build
docker-compose -f local-dev-compose.yml -p seaweedfs up
cluster: build
docker-compose -f local-cluster-compose.yml -p seaweedfs up
clean:
rm ./weed

View file

@ -0,0 +1,53 @@
version: '2'
services:
master0:
image: chrislusf/seaweedfs:local
ports:
- 9333:9333
- 19333:19333
command: "master -ip=master0 -port=9333 -peers=master0:9333,master1:9334,master2:9335"
master1:
image: chrislusf/seaweedfs:local
ports:
- 9334:9334
- 19334:19334
command: "master -ip=master1 -port=9334 -peers=master0:9333,master1:9334,master2:9335"
master2:
image: chrislusf/seaweedfs:local
ports:
- 9335:9335
- 19335:19335
command: "master -ip=master2 -port=9335 -peers=master0:9333,master1:9334,master2:9335"
volume:
image: chrislusf/seaweedfs:local
ports:
- 8080:8080
- 18080:18080
command: '-v=2 volume -max=5 -mserver="master0:9333,master1:9334,master2:9335" -port=8080 -ip=volume'
depends_on:
- master0
- master1
- master2
filer:
image: chrislusf/seaweedfs:local
ports:
- 8888:8888
- 18888:18888
command: '-v=4 filer -master="master0:9333,master1:9334,master2:9335"'
depends_on:
- master0
- master1
- master2
- volume
s3:
image: chrislusf/seaweedfs:local
ports:
- 8333:8333
command: '-v=4 s3 -filer="filer:8888" -waitForFiler'
depends_on:
- master0
- master1
- master2
- volume
- filer

View file

@ -2,42 +2,34 @@ version: '2'
services:
master:
build:
context: .
dockerfile: Dockerfile.go_build
image: chrislusf/seaweedfs:local
ports:
- 9333:9333
- 19333:19333
- 9333:9333
- 19333:19333
command: "master -ip=master"
volume:
build:
context: .
dockerfile: Dockerfile.go_build
image: chrislusf/seaweedfs:local
ports:
- 8080:8080
- 18080:18080
- 8080:8080
- 18080:18080
command: '-v=2 volume -max=5 -mserver="master:9333" -port=8080 -ip=volume'
depends_on:
- master
- master
filer:
build:
context: .
dockerfile: Dockerfile.go_build
image: chrislusf/seaweedfs:local
ports:
- 8888:8888
- 18888:18888
- 8888:8888
- 18888:18888
command: '-v=4 filer -master="master:9333"'
depends_on:
- master
- volume
- master
- volume
s3:
build:
context: .
dockerfile: Dockerfile.go_build
image: chrislusf/seaweedfs:local
ports:
- 8333:8333
command: '-v=4 s3 -filer="filer:8888"'
- 8333:8333
command: '-v=4 s3 -filer="filer:8888" -waitForFiler'
depends_on:
- master
- volume
- filer
- master
- volume
- filer

View file

@ -4,28 +4,28 @@ services:
master:
image: chrislusf/seaweedfs # use a remote image
ports:
- 9333:9333
- 19333:19333
- 9333:9333
- 19333:19333
command: "master -ip=master"
volume:
image: chrislusf/seaweedfs # use a remote image
ports:
- 8080:8080
- 18080:18080
- 8080:8080
- 18080:18080
command: 'volume -max=15 -mserver="master:9333" -port=8080'
depends_on:
- master
- master
filer:
image: chrislusf/seaweedfs # use a remote image
ports:
- 8888:8888
- 18888:18888
- 8888:8888
- 18888:18888
command: 'filer -master="master:9333"'
tty: true
stdin_open: true
depends_on:
- master
- volume
- master
- volume
cronjob:
image: chrislusf/seaweedfs # use a remote image
command: 'cronjob'
@ -34,14 +34,14 @@ services:
CRON_SCHEDULE: '*/2 * * * * *' # Default: '*/5 * * * * *'
WEED_MASTER: master:9333 # Default: localhost:9333
depends_on:
- master
- volume
- master
- volume
s3:
image: chrislusf/seaweedfs # use a remote image
ports:
- 8333:8333
command: 's3 -filer="filer:8888"'
- 8333:8333
command: 's3 -filer="filer:8888" -waitForFiler'
depends_on:
- master
- volume
- filer
- master
- volume
- filer

View file

@ -4,32 +4,32 @@ services:
master:
image: chrislusf/seaweedfs:dev # use a remote dev image
ports:
- 9333:9333
- 19333:19333
- 9333:9333
- 19333:19333
command: "master -ip=master"
volume:
image: chrislusf/seaweedfs:dev # use a remote dev image
ports:
- 8080:8080
- 18080:18080
- 8080:8080
- 18080:18080
command: '-v=2 volume -max=5 -mserver="master:9333" -port=8080 -ip=volume'
depends_on:
- master
- master
filer:
image: chrislusf/seaweedfs:dev # use a remote dev image
ports:
- 8888:8888
- 18888:18888
- 8888:8888
- 18888:18888
command: '-v=4 filer -master="master:9333"'
depends_on:
- master
- volume
- master
- volume
s3:
image: chrislusf/seaweedfs:dev # use a remote dev image
ports:
- 8333:8333
command: '-v=4 s3 -filer="filer:8888"'
- 8333:8333
command: '-v=4 s3 -filer="filer:8888" -waitForFiler'
depends_on:
- master
- volume
- filer
- master
- volume
- filer