aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chrislusf@users.noreply.github.com>2020-12-21 09:10:01 -0800
committerGitHub <noreply@github.com>2020-12-21 09:10:01 -0800
commitf30de7f8273e9c67b2f35c427916436b4bc20fbf (patch)
treea0ac9fd5fba6ebf1fd742186d5bb091847526ecc
parent75629954d1d215b3e6f7fe43024af2db137ad5ba (diff)
parent6b4e9eef57bfb613f2c2a1dc4ca3edf4f333d4ec (diff)
downloadseaweedfs-f30de7f8273e9c67b2f35c427916436b4bc20fbf.tar.xz
seaweedfs-f30de7f8273e9c67b2f35c427916436b4bc20fbf.zip
Merge pull request #1693 from kmlebedev/local-dev-k8s
k8s build
-rw-r--r--docker/Makefile3
-rw-r--r--docker/local-k8s-compose.yml65
-rw-r--r--docker/seaweedfs.sql12
3 files changed, 80 insertions, 0 deletions
diff --git a/docker/Makefile b/docker/Makefile
index 8ab83ca18..c2e9a12e7 100644
--- a/docker/Makefile
+++ b/docker/Makefile
@@ -12,6 +12,9 @@ build:
dev: build
docker-compose -f local-dev-compose.yml -p seaweedfs up
+k8s: build
+ docker-compose -f local-k8s-compose.yml -p seaweedfs up
+
dev_registry: build
docker-compose -f local-registry-compose.yml -p seaweedfs up
diff --git a/docker/local-k8s-compose.yml b/docker/local-k8s-compose.yml
new file mode 100644
index 000000000..0dda89ca4
--- /dev/null
+++ b/docker/local-k8s-compose.yml
@@ -0,0 +1,65 @@
+version: '2'
+
+services:
+ master:
+ image: chrislusf/seaweedfs:local
+ ports:
+ - 9333:9333
+ - 19333:19333
+ command: "master -ip=master"
+ volume:
+ image: chrislusf/seaweedfs:local
+ ports:
+ - 8080:8080
+ - 18080:18080
+ command: "volume -mserver=master:9333 -port=8080 -ip=volume"
+ depends_on:
+ - master
+ mysql:
+ image: percona/percona-server:5.7
+ ports:
+ - 3306:3306
+ volumes:
+ - ./seaweedfs.sql:/docker-entrypoint-initdb.d/seaweedfs.sql
+ environment:
+ - MYSQL_ROOT_PASSWORD=secret
+ - MYSQL_DATABASE=seaweedfs
+ - MYSQL_PASSWORD=secret
+ - MYSQL_USER=seaweedfs
+ filer:
+ image: chrislusf/seaweedfs:local
+ ports:
+ - 8888:8888
+ - 18888:18888
+ environment:
+ - WEED_MYSQL_HOSTNAME=mysql
+ - WEED_MYSQL_PORT=3306
+ - WEED_MYSQL_DATABASE=seaweedfs
+ - WEED_MYSQL_USERNAME=seaweedfs
+ - WEED_MYSQL_PASSWORD=secret
+ - WEED_MYSQL_ENABLED=true
+ - WEED_LEVELDB2_ENABLED=false
+ command: 'filer -master="master:9333"'
+ depends_on:
+ - master
+ - volume
+ - mysql
+ ingress:
+ image: jwilder/nginx-proxy
+ ports:
+ - "80:80"
+ volumes:
+ - /var/run/docker.sock:/tmp/docker.sock:ro
+ - /tmp/nginx:/etc/nginx/conf.d
+ s3:
+ image: chrislusf/seaweedfs:local
+ ports:
+ - 8333:8333
+ command: 's3 -filer="filer:8888"'
+ depends_on:
+ - master
+ - volume
+ - filer
+ environment:
+ - VIRTUAL_HOST=s3
+ - VIRTUAL_PORT=8333 \ No newline at end of file
diff --git a/docker/seaweedfs.sql b/docker/seaweedfs.sql
new file mode 100644
index 000000000..38ebc575c
--- /dev/null
+++ b/docker/seaweedfs.sql
@@ -0,0 +1,12 @@
+CREATE DATABASE IF NOT EXISTS seaweedfs;
+CREATE USER IF NOT EXISTS 'seaweedfs'@'%' IDENTIFIED BY 'secret';
+GRANT ALL PRIVILEGES ON seaweedfs_fast.* TO 'seaweedfs'@'%';
+FLUSH PRIVILEGES;
+USE seaweedfs;
+CREATE TABLE IF NOT EXISTS filemeta (
+ dirhash BIGINT COMMENT 'first 64 bits of MD5 hash value of directory field',
+ name VARCHAR(1000) COMMENT 'directory or file name',
+ directory TEXT COMMENT 'full path to parent directory',
+ meta LONGBLOB,
+ PRIMARY KEY (dirhash, name)
+) DEFAULT CHARSET=utf8; \ No newline at end of file