{ "module": "minio", "version": "1", "provides": [ { "name": "s3-bucket", "scope": "mesh" } ], "capabilities": [ "container-runtime" ], "emits": [ "module.minio.bucket.created", "module.minio.bucket.removed" ], "listens": [ { "port": 9000, "protocol": "tcp", "from": "mesh", "why": "the S3 endpoint" } ], "serves": { "s3-bucket": { "scheme": "http", "region": "us-east-1", "port": 9000 } }, "receives": { "s3-bucket": "/var/lib/minio/grants/mesh.json" }, "grants": { "s3-bucket": "/var/lib/minio/grants" }, "own-secrets": { "root": "/var/lib/minio/root.secret", "broker": "/var/lib/mesh/minio/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", "path": "/var/lib/mesh/minio", "mode": "0700" }, { "id": "state", "type": "directory", "path": "/var/lib/minio", "mode": "0700" }, { "id": "grants", "type": "directory", "path": "/var/lib/minio/grants", "mode": "0700" }, { "id": "root-env", "type": "file", "path": "/var/lib/minio/root.env", "mode": "0600", "content": "MINIO_ROOT_USER=meshroot\nMINIO_ROOT_PASSWORD=${secret:root}\n" }, { "id": "data", "type": "directory", "path": "/services/minio/data/data1-1", "mode": "0700" }, { "id": "net", "type": "network", "name": "minio" }, { "id": "server", "type": "container", "name": "minio", "image": "minio/minio@sha256:14cea493d9a34af32f524e538b8346cf79f3321eff8e708c1e2960462bd8936e", "network": "minio", "args": [ "server", "/data", "--console-address", ":9001" ], "env-file": [ "/var/lib/minio/root.env" ], "ports": [ "9000" ], "volumes": [ "/services/minio/data/data1-1:/data" ] }, { "id": "runtime", "type": "container", "name": "mesh-minio", "image": "mesh-runtime-minio@sha256:0000000000000000000000000000000000000000000000000000000000000000", "network": "minio", "volumes": [ "/var/lib/mesh/minio/broker:/run/secrets/broker:ro", "/var/lib/minio/grants:/var/lib/minio/grants:ro", "/var/lib/minio/root.secret:/run/secrets/root:ro" ], "env": { "MESH_MINIO_ENDPOINT": "http://minio:9000", "MESH_MINIO_ROOT_USER": "meshroot", "MESH_MINIO_ROOT_PASSWORD_FILE": "/run/secrets/root", "MESH_BROKER_FILE": "/run/secrets/broker", "MESH_RECEIVES": "/var/lib/minio/grants/mesh.json" } } ] }