forked from TrueCloudLab/frostfs-dev-env
194 lines
6.3 KiB
YAML
194 lines
6.3 KiB
YAML
---
|
|
|
|
version: "2.4"
|
|
services:
|
|
storage01:
|
|
image: ${NODE_IMAGE}:${NODE_VERSION}
|
|
domainname: ${LOCAL_DOMAIN}
|
|
hostname: s01
|
|
container_name: s01
|
|
restart: on-failure
|
|
networks:
|
|
storage_int:
|
|
internet:
|
|
ipv4_address: ${IPV4_PREFIX}.71
|
|
volumes:
|
|
- ./wallet01.json:/wallet.json
|
|
- ./../../vendor/hosts:/etc/hosts
|
|
- storage_s01:/storage
|
|
- ./../../vendor/frostfs-cli:/frostfs-cli
|
|
- ./cli-cfg.yml:/cli-cfg.yml
|
|
- ./healthcheck.sh:/healthcheck.sh
|
|
- ./s04tls.crt:/etc/ssl/certs/s04tls.crt
|
|
- ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert
|
|
- ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key
|
|
- ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt
|
|
- ./cfg:/etc/frostfs/storage
|
|
stop_signal: SIGKILL
|
|
env_file: [ ".env", ".storage.env", ".int_test.env" ]
|
|
command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ]
|
|
environment:
|
|
- FROSTFS_NODE_WALLET_PATH=./wallet.json
|
|
- FROSTFS_NODE_WALLET_PASSWORD=
|
|
- FROSTFS_NODE_ADDRESSES=s01.${LOCAL_DOMAIN}:8080
|
|
- FROSTFS_GRPC_0_ENDPOINT=s01.${LOCAL_DOMAIN}:8080
|
|
- FROSTFS_CONTROL_GRPC_ENDPOINT=s01.${LOCAL_DOMAIN}:8081
|
|
- FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:RU MOW
|
|
- FROSTFS_NODE_ATTRIBUTE_2=Price:22
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "/healthcheck.sh"]
|
|
interval: 2s
|
|
timeout: 1s
|
|
retries: 5
|
|
start_period: 10s
|
|
|
|
storage02:
|
|
image: ${NODE_IMAGE}:${NODE_VERSION}
|
|
domainname: ${LOCAL_DOMAIN}
|
|
hostname: s02
|
|
container_name: s02
|
|
restart: on-failure
|
|
networks:
|
|
storage_int:
|
|
internet:
|
|
ipv4_address: ${IPV4_PREFIX}.72
|
|
volumes:
|
|
- ./wallet02.json:/wallet.json
|
|
- ./../../vendor/hosts:/etc/hosts
|
|
- storage_s02:/storage
|
|
- ./../../vendor/frostfs-cli:/frostfs-cli
|
|
- ./cli-cfg.yml:/cli-cfg.yml
|
|
- ./healthcheck.sh:/healthcheck.sh
|
|
- ./s04tls.crt:/etc/ssl/certs/s04tls.crt
|
|
- ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert
|
|
- ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key
|
|
- ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt
|
|
- ./cfg:/etc/frostfs/storage
|
|
stop_signal: SIGKILL
|
|
env_file: [ ".env", ".storage.env", ".int_test.env" ]
|
|
command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ]
|
|
environment:
|
|
- FROSTFS_NODE_WALLET_PATH=./wallet.json
|
|
- FROSTFS_NODE_WALLET_PASSWORD=
|
|
- FROSTFS_NODE_ADDRESSES=s02.${LOCAL_DOMAIN}:8080
|
|
- FROSTFS_GRPC_0_ENDPOINT=s02.${LOCAL_DOMAIN}:8080
|
|
- FROSTFS_CONTROL_GRPC_ENDPOINT=s02.${LOCAL_DOMAIN}:8081
|
|
- FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:RU LED
|
|
- FROSTFS_NODE_ATTRIBUTE_2=Price:33
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "/healthcheck.sh"]
|
|
interval: 2s
|
|
timeout: 1s
|
|
retries: 5
|
|
start_period: 10s
|
|
|
|
storage03:
|
|
image: ${NODE_IMAGE}:${NODE_VERSION}
|
|
domainname: ${LOCAL_DOMAIN}
|
|
hostname: s03
|
|
container_name: s03
|
|
restart: on-failure
|
|
networks:
|
|
storage_int:
|
|
internet:
|
|
ipv4_address: ${IPV4_PREFIX}.73
|
|
volumes:
|
|
- ./wallet03.json:/wallet.json
|
|
- ./../../vendor/hosts:/etc/hosts
|
|
- storage_s03:/storage
|
|
- ./../../vendor/frostfs-cli:/frostfs-cli
|
|
- ./cli-cfg.yml:/cli-cfg.yml
|
|
- ./healthcheck.sh:/healthcheck.sh
|
|
- ./s04tls.crt:/etc/ssl/certs/s04tls.crt
|
|
- ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert
|
|
- ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key
|
|
- ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt
|
|
- ./cfg:/etc/frostfs/storage
|
|
stop_signal: SIGKILL
|
|
env_file: [ ".env", ".storage.env", ".int_test.env" ]
|
|
command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ]
|
|
environment:
|
|
- FROSTFS_NODE_WALLET_PATH=./wallet.json
|
|
- FROSTFS_NODE_WALLET_PASSWORD=
|
|
- FROSTFS_NODE_ADDRESSES=s03.${LOCAL_DOMAIN}:8080
|
|
- FROSTFS_GRPC_0_ENDPOINT=s03.${LOCAL_DOMAIN}:8080
|
|
- FROSTFS_CONTROL_GRPC_ENDPOINT=s03.${LOCAL_DOMAIN}:8081
|
|
- FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:SE STO
|
|
- FROSTFS_NODE_ATTRIBUTE_2=Price:11
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "/healthcheck.sh"]
|
|
interval: 2s
|
|
timeout: 1s
|
|
retries: 5
|
|
start_period: 10s
|
|
|
|
storage04:
|
|
image: ${NODE_IMAGE}:${NODE_VERSION}
|
|
domainname: ${LOCAL_DOMAIN}
|
|
hostname: s04
|
|
container_name: s04
|
|
restart: on-failure
|
|
networks:
|
|
storage_int:
|
|
internet:
|
|
ipv4_address: ${IPV4_PREFIX}.74
|
|
volumes:
|
|
- ./wallet04.json:/wallet.json
|
|
- ./../../vendor/hosts:/etc/hosts
|
|
- storage_s04:/storage
|
|
- ./../../vendor/frostfs-cli:/frostfs-cli
|
|
- ./cli-cfg.yml:/cli-cfg.yml
|
|
- ./healthcheck.sh:/healthcheck.sh
|
|
- ./s04tls.crt:/tls.crt
|
|
- ./s04tls.key:/tls.key
|
|
- ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert
|
|
- ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key
|
|
- ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt
|
|
- ./cfg:/etc/frostfs/storage
|
|
stop_signal: SIGKILL
|
|
env_file: [ ".env", ".storage.env", ".int_test.env" ]
|
|
command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ]
|
|
environment:
|
|
- FROSTFS_NODE_WALLET_PATH=./wallet.json
|
|
- FROSTFS_NODE_WALLET_PASSWORD=
|
|
- FROSTFS_NODE_ADDRESSES=s04.${LOCAL_DOMAIN}:8080 grpcs://s04.${LOCAL_DOMAIN}:8082
|
|
- FROSTFS_CONTROL_GRPC_ENDPOINT=s04.${LOCAL_DOMAIN}:8081
|
|
- FROSTFS_GRPC_NUM=2
|
|
- FROSTFS_GRPC_0_ENDPOINT=s04.${LOCAL_DOMAIN}:8080
|
|
- FROSTFS_GRPC_1_ENDPOINT=s04.${LOCAL_DOMAIN}:8082
|
|
- FROSTFS_GRPC_1_TLS_ENABLED=true
|
|
- FROSTFS_GRPC_1_TLS_CERTIFICATE=/tls.crt
|
|
- FROSTFS_GRPC_1_TLS_KEY=/tls.key
|
|
- FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:FI HEL
|
|
- FROSTFS_NODE_ATTRIBUTE_2=Price:44
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "/healthcheck.sh"]
|
|
interval: 2s
|
|
timeout: 1s
|
|
retries: 5
|
|
start_period: 10s
|
|
|
|
sn-healthcheck:
|
|
container_name: sn-healthcheck
|
|
image: debian:10
|
|
depends_on:
|
|
storage01:
|
|
condition: service_healthy
|
|
storage02:
|
|
condition: service_healthy
|
|
storage03:
|
|
condition: service_healthy
|
|
storage04:
|
|
condition: service_healthy
|
|
|
|
volumes:
|
|
storage_s01:
|
|
storage_s02:
|
|
storage_s03:
|
|
storage_s04:
|
|
|
|
networks:
|
|
storage_int:
|
|
internet:
|
|
external: true
|
|
name: basenet_internet
|