diff --git a/.env b/.env index ac405a4..65b06d0 100644 --- a/.env +++ b/.env @@ -2,48 +2,18 @@ IPV4_PREFIX=192.168.123 # NeoGo privnet -CHAIN_VERSION=10 -NEOGO_VERSION=0.90.1-pre-2-g59be6bcd +CHAIN_URL="https://fs.neo.org/dist/devenv.gz" +NEOGO_VERSION=0.91.0-6-gd7e13de5 # NeoGo sidechain -MORPH_CHAIN_VERSION=100 - -# fs.neo.org -NGINX_VERSION=1.18 -FS_VERSION=v0.0.1-32-g7186-dirty-localtest +MORPH_CHAIN_URL="https://fs.neo.org/dist/neo.morph.gz" # NeoFS Services -NODE_VERSION=0.11.0 -IR_VERSION=0.11.0 -NEOFS_CLI_VERSION=0.11.0 +NODE_VERSION=0.11.0-94-g163c1d2 +IR_VERSION=0.11.0-94-g163c1d2 -# NeoFS Core -NEOFS_LOGGER_LEVEL=info -NEOFS_NODE_GRPC_LOGGING=false +# NeoFS Services Images +NODE_IMAGE=nspccdev/neofs-storage +IR_IMAGE=nspccdev/neofs-ir -NEOFS_PEERS_CONNECTIONS_TTL=5m -NEOFS_PEERS_CONNECTIONS_IDLE=60m -NEOFS_PEERS_KEEP_ALIVE_TTL=5m -NEOFS_PEERS_KEEP_ALIVE_PING=500ms -# Max file that you can upload in MB: -NEOFS_OBJECT_MAX_PROCESSING_SIZE=50 -NEOFS_PLACEMENT_WEIGHT_INHERITANCE_ENABLED=true - -# Price and capacity arguments for storage nodes -NEOFS_NODE_PRICE=1 -NEOFS_NODE_CAPACITY=100 - -# Neo:Morph parameters -NEOFS_MORPH_ENDPOINT=http://morph_chain.localtest.nspcc.ru:30333 -NEOFS_MORPH_EVENT_ENDPOINT=ws://morph_chain.localtest.nspcc.ru:30333/ws - -NEOFS_MORPH_DIAL_TIMEOUT=10s -NEOFS_MORPH_EVENT_DIAL_TIMEOUT=10s - -NEOFS_MORPH_NETMAP_SCRIPT_HASH=bf104146cf95fc70029bb3a51d75653c9fa37b69 -NEOFS_MORPH_BALANCE_SCRIPT_HASH=1aeefe1d0dfade49740fff779c02cd4a0538ffb1 -NEOFS_MORPH_NEOFSID_SCRIPT_HASH=ae9e252fa22c35e43f61bcdae2b4dfe0985ba68e -NEOFS_MORPH_CONTAINER_SCRIPT_HASH=9d2ca84d7fb88213c4baced5a6ed4dc402309039 -NEOFS_MORPH_AUDIT_SCRIPT_HASH=a9a9424d5507f81fbf7829aa8d92d6fe149bace1 -NEOFS_MORPH_REPUTATION_SCRIPT_HASH=cd5059641c18bb979173e63b23d4c9b42b0485c3 diff --git a/services/chain/artifacts.mk b/services/chain/artifacts.mk index 6c0ba0f..9d61d81 100644 --- a/services/chain/artifacts.mk +++ b/services/chain/artifacts.mk @@ -5,11 +5,13 @@ get.chain: @mkdir -p ./vendor ifeq (${CHAIN_PATH},) - @echo "⇒ Download blockchain dump VERSION=${CHAIN_VERSION}" + @echo "⇒ Download blockchain dump from ${CHAIN_URL}" @curl \ - -sS "https://fs.neo.org/dist/chain.gz" \ + -sS "${CHAIN_URL}" \ -o ./vendor/chain.gz else @echo "⇒ Copy local archive ${CHAIN_PATH}" @cp ${CHAIN_PATH} ./vendor/chain.gz endif + + diff --git a/services/chain/node-wallet.json b/services/chain/node-wallet.json index cc6da19..1612925 100644 --- a/services/chain/node-wallet.json +++ b/services/chain/node-wallet.json @@ -2,11 +2,11 @@ "version": "3.0", "accounts": [ { - "address": "NQRLhCpAru9BjGsMwk67vdMwmzKMRgsnnN", - "key": "6PYSxdYbqJQKJcE7L8SUummK4X95aK14KA9obhw3fw6SX3rMRofPzpnr8L", + "address": "NbTiM6h8r99kpRtb428XcsUk1TzKed2gTc", + "key": "6PYN7LvaWqBNw7Xb7a52LSbPnP91kyuzYi3HncGvQwQoYAY2W8DncTgpux", "label": "", "contract": { - "script": "DCECs2Ir9AF73+MXxYrtX0x1PyBrfbiWBG+n13S7xL9/jcILQQqQatQ=", + "script": "DCECs2Ir9AF73+MXxYrtX0x1PyBrfbiWBG+n13S7xL9/jcILQZVEDXg=", "parameters": [ { "name": "parameter0", @@ -16,14 +16,14 @@ "deployed": false }, "lock": false, - "isDefault": false + "isdefault": false }, { - "address": "Nbb1qkwcwNSBs9pAnrVVrnFbWnbWBk91U2", - "key": "6PYSxdYbqJQKJcE7L8SUummK4X95aK14KA9obhw3fw6SX3rMRofPzpnr8L", + "address": "NUVPACMnKFhpuHjsRjhUvXz1XhqfGZYVtY", + "key": "6PYN7LvaWqBNw7Xb7a52LSbPnP91kyuzYi3HncGvQwQoYAY2W8DncTgpux", "label": "", "contract": { - "script": "EwwhAhA6f33QFlWFl/eWDSfFFqQ5T9loueZRVetLAT5AQEBuDCECp7xV/oaE4BGXaNEEujB5W9zIZhnoZK3SYVZyPtGFzWIMIQKzYiv0AXvf4xfFiu1fTHU/IGt9uJYEb6fXdLvEv3+NwgwhA9kMB99j5pDOd5EuEKtRrMlEtmhgI3tgjE+PgwnnHuaZFAtBMHOzuw==", + "script": "EwwhAhA6f33QFlWFl/eWDSfFFqQ5T9loueZRVetLAT5AQEBuDCECp7xV/oaE4BGXaNEEujB5W9zIZhnoZK3SYVZyPtGFzWIMIQKzYiv0AXvf4xfFiu1fTHU/IGt9uJYEb6fXdLvEv3+NwgwhA9kMB99j5pDOd5EuEKtRrMlEtmhgI3tgjE+PgwnnHuaZFAtBE43vrw==", "parameters": [ { "name": "parameter0", @@ -41,14 +41,14 @@ "deployed": false }, "lock": false, - "isDefault": false + "isdefault": false }, { - "address": "NYqxsNMHxDg3T19APYP27mBZFfauC4zngR", - "key": "6PYSxdYbqJQKJcE7L8SUummK4X95aK14KA9obhw3fw6SX3rMRofPzpnr8L", + "address": "NVNvVRW5Q5naSx2k2iZm7xRgtRNGuZppAK", + "key": "6PYN7LvaWqBNw7Xb7a52LSbPnP91kyuzYi3HncGvQwQoYAY2W8DncTgpux", "label": "", "contract": { - "script": "EQwhArNiK/QBe9/jF8WK7V9MdT8ga324lgRvp9d0u8S/f43CEQtBMHOzuw==", + "script": "EQwhArNiK/QBe9/jF8WK7V9MdT8ga324lgRvp9d0u8S/f43CEQtBE43vrw==", "parameters": [ { "name": "parameter0", @@ -58,7 +58,7 @@ "deployed": false }, "lock": false, - "isDefault": false + "isdefault": false } ], "scrypt": { diff --git a/services/chain/protocol.privnet.yml b/services/chain/protocol.privnet.yml index 94e870b..98ee052 100644 --- a/services/chain/protocol.privnet.yml +++ b/services/chain/protocol.privnet.yml @@ -2,8 +2,9 @@ ProtocolConfiguration: Magic: 56753 SecondsPerBlock: 15 MemPoolSize: 50000 - StandbyValidators: + StandbyCommittee: - 02b3622bf4017bdfe317c58aed5f4c753f206b7db896046fa7d774bbc4bf7f8dc2 + ValidatorsCount: 1 SeedList: - 172.200.0.1:20333 VerifyBlocks: true @@ -25,8 +26,8 @@ ApplicationConfiguration: MinPeers: 0 RPC: Enabled: true - MaxGasInvoke: 10 EnableCORSWorkaround: false + MaxGasInvoke: 10 Port: 30333 Prometheus: Enabled: true diff --git a/services/cli/.env b/services/cli/.env deleted file mode 120000 index c7360fb..0000000 --- a/services/cli/.env +++ /dev/null @@ -1 +0,0 @@ -../../.env \ No newline at end of file diff --git a/services/cli/.order b/services/cli/.order deleted file mode 100644 index cd672a5..0000000 --- a/services/cli/.order +++ /dev/null @@ -1 +0,0 @@ -06 diff --git a/services/cli/docker-compose.yml b/services/cli/docker-compose.yml deleted file mode 100644 index ebf70ee..0000000 --- a/services/cli/docker-compose.yml +++ /dev/null @@ -1,20 +0,0 @@ ---- - -version: '2.4' -services: - - cli: - image: nspccdev/neofs-cli:${NEOFS_CLI_VERSION} - command: ["tail", "-f", "/dev/null"] - restart: always - container_name: neofs-cli - env_file: [ ".env" ] - networks: - internet: - volumes: - - ./data:/data - -networks: - internet: - external: - name: basenet_internet diff --git a/services/ir/.ir.env b/services/ir/.ir.env index a5814d5..d944713 100644 --- a/services/ir/.ir.env +++ b/services/ir/.ir.env @@ -7,6 +7,7 @@ NEOFS_IR_MORPH_ENDPOINT_CLIENT=http://morph_chain.localtest.nspcc.ru:30333 NEOFS_IR_MORPH_ENDPOINT_NOTIFICATION=ws://morph_chain.localtest.nspcc.ru:30333/ws NEOFS_IR_TIMERS_EPOCH=30s -NEOFS_IR_CONTRACTS_NETMAP=bf104146cf95fc70029bb3a51d75653c9fa37b69 -NEOFS_IR_CONTRACTS_BALANCE=1aeefe1d0dfade49740fff779c02cd4a0538ffb1 -NEOFS_IR_CONTRACTS_NEOFS=467e9045b5893b9d217f2b3d60bee69b3bb37872 +NEOFS_IR_CONTRACTS_NETMAP=f41ce4aceff0522ed6ce303c684fdddd690332a7 +NEOFS_IR_CONTRACTS_BALANCE=39ff7eb35bb6357ebed9f244f2aa72e8e7557eaf +NEOFS_IR_CONTRACTS_CONTAINER=4a445a72c5dba72c0c4e4634cff86c48dfe2c396 +NEOFS_IR_CONTRACTS_NEOFS=461f0b69d4fb7b1c2d503c8e598deb603d2075cc diff --git a/services/ir/docker-compose.yml b/services/ir/docker-compose.yml index 233d3b6..2e2e10e 100644 --- a/services/ir/docker-compose.yml +++ b/services/ir/docker-compose.yml @@ -4,7 +4,7 @@ version: "2.4" services: ir01: - image: nspccdev/neofs-ir:${IR_VERSION} + image: ${IR_IMAGE}:${IR_VERSION} container_name: m01.localtest.nspcc.ru networks: ir_int: @@ -18,7 +18,7 @@ services: ir02: - image: nspccdev/neofs-ir:${IR_VERSION} + image: ${IR_IMAGE}:${IR_VERSION} container_name: m02.localtest.nspcc.ru networks: ir_int: @@ -31,7 +31,7 @@ services: - NEOFS_IR_KEY=/02.key ir03: - image: nspccdev/neofs-ir:${IR_VERSION} + image: ${IR_IMAGE}:${IR_VERSION} container_name: m03.localtest.nspcc.ru networks: ir_int: @@ -44,7 +44,7 @@ services: - NEOFS_IR_KEY=/03.key ir04: - image: nspccdev/neofs-ir:${IR_VERSION} + image: ${IR_IMAGE}:${IR_VERSION} container_name: m04.localtest.nspcc.ru networks: ir_int: diff --git a/services/morph_chain/artifacts.mk b/services/morph_chain/artifacts.mk index 5607450..4535a7a 100644 --- a/services/morph_chain/artifacts.mk +++ b/services/morph_chain/artifacts.mk @@ -5,9 +5,9 @@ get.morph_chain: @mkdir -p ./vendor ifeq (${MORPH_CHAIN_PATH},) - @echo "⇒ Download morph chain dump VERSION=${MORPH_CHAIN_VERSION}" + @echo "⇒ Download morph chain dump from ${MORPH_CHAIN_URL}" @curl \ - -sS "https://fs.neo.org/dist/morph.chain.gz" \ + -sS "${MORPH_CHAIN_URL}" \ -o ./vendor/morph_chain.gz else @echo "⇒ Copy local archive ${MORPH_CHAIN_PATH}" diff --git a/services/morph_chain/node-wallet.json b/services/morph_chain/node-wallet.json index cc6da19..1612925 100644 --- a/services/morph_chain/node-wallet.json +++ b/services/morph_chain/node-wallet.json @@ -2,11 +2,11 @@ "version": "3.0", "accounts": [ { - "address": "NQRLhCpAru9BjGsMwk67vdMwmzKMRgsnnN", - "key": "6PYSxdYbqJQKJcE7L8SUummK4X95aK14KA9obhw3fw6SX3rMRofPzpnr8L", + "address": "NbTiM6h8r99kpRtb428XcsUk1TzKed2gTc", + "key": "6PYN7LvaWqBNw7Xb7a52LSbPnP91kyuzYi3HncGvQwQoYAY2W8DncTgpux", "label": "", "contract": { - "script": "DCECs2Ir9AF73+MXxYrtX0x1PyBrfbiWBG+n13S7xL9/jcILQQqQatQ=", + "script": "DCECs2Ir9AF73+MXxYrtX0x1PyBrfbiWBG+n13S7xL9/jcILQZVEDXg=", "parameters": [ { "name": "parameter0", @@ -16,14 +16,14 @@ "deployed": false }, "lock": false, - "isDefault": false + "isdefault": false }, { - "address": "Nbb1qkwcwNSBs9pAnrVVrnFbWnbWBk91U2", - "key": "6PYSxdYbqJQKJcE7L8SUummK4X95aK14KA9obhw3fw6SX3rMRofPzpnr8L", + "address": "NUVPACMnKFhpuHjsRjhUvXz1XhqfGZYVtY", + "key": "6PYN7LvaWqBNw7Xb7a52LSbPnP91kyuzYi3HncGvQwQoYAY2W8DncTgpux", "label": "", "contract": { - "script": "EwwhAhA6f33QFlWFl/eWDSfFFqQ5T9loueZRVetLAT5AQEBuDCECp7xV/oaE4BGXaNEEujB5W9zIZhnoZK3SYVZyPtGFzWIMIQKzYiv0AXvf4xfFiu1fTHU/IGt9uJYEb6fXdLvEv3+NwgwhA9kMB99j5pDOd5EuEKtRrMlEtmhgI3tgjE+PgwnnHuaZFAtBMHOzuw==", + "script": "EwwhAhA6f33QFlWFl/eWDSfFFqQ5T9loueZRVetLAT5AQEBuDCECp7xV/oaE4BGXaNEEujB5W9zIZhnoZK3SYVZyPtGFzWIMIQKzYiv0AXvf4xfFiu1fTHU/IGt9uJYEb6fXdLvEv3+NwgwhA9kMB99j5pDOd5EuEKtRrMlEtmhgI3tgjE+PgwnnHuaZFAtBE43vrw==", "parameters": [ { "name": "parameter0", @@ -41,14 +41,14 @@ "deployed": false }, "lock": false, - "isDefault": false + "isdefault": false }, { - "address": "NYqxsNMHxDg3T19APYP27mBZFfauC4zngR", - "key": "6PYSxdYbqJQKJcE7L8SUummK4X95aK14KA9obhw3fw6SX3rMRofPzpnr8L", + "address": "NVNvVRW5Q5naSx2k2iZm7xRgtRNGuZppAK", + "key": "6PYN7LvaWqBNw7Xb7a52LSbPnP91kyuzYi3HncGvQwQoYAY2W8DncTgpux", "label": "", "contract": { - "script": "EQwhArNiK/QBe9/jF8WK7V9MdT8ga324lgRvp9d0u8S/f43CEQtBMHOzuw==", + "script": "EQwhArNiK/QBe9/jF8WK7V9MdT8ga324lgRvp9d0u8S/f43CEQtBE43vrw==", "parameters": [ { "name": "parameter0", @@ -58,7 +58,7 @@ "deployed": false }, "lock": false, - "isDefault": false + "isdefault": false } ], "scrypt": { diff --git a/services/morph_chain/protocol.privnet.yml b/services/morph_chain/protocol.privnet.yml index 4a4ae5f..49c00d1 100644 --- a/services/morph_chain/protocol.privnet.yml +++ b/services/morph_chain/protocol.privnet.yml @@ -1,9 +1,10 @@ ProtocolConfiguration: Magic: 56753 - SecondsPerBlock: 5 + SecondsPerBlock: 15 MemPoolSize: 50000 - StandbyValidators: + StandbyCommittee: - 02b3622bf4017bdfe317c58aed5f4c753f206b7db896046fa7d774bbc4bf7f8dc2 + ValidatorsCount: 1 SeedList: - 172.200.0.1:20333 VerifyBlocks: true @@ -25,8 +26,8 @@ ApplicationConfiguration: MinPeers: 0 RPC: Enabled: true - MaxGasInvoke: 10 EnableCORSWorkaround: false + MaxGasInvoke: 10 Port: 30333 Prometheus: Enabled: true diff --git a/services/storage/.storage.env b/services/storage/.storage.env index 45e4aca..8afb965 100644 --- a/services/storage/.storage.env +++ b/services/storage/.storage.env @@ -1,48 +1,5 @@ -NEOFS_BOOTSTRAP_TIMES_PER_EPOCH=100 +NEOFS_MORPH_ENDPOINT=http://morph_chain.localtest.nspcc.ru:30333 -NEOFS_NODE_OPTIONS_0=/Location:NorthAmerica/Country:US/City:NewYork -NEOFS_NODE_OPTIONS_1=/Capacity:45 -NEOFS_NODE_OPTIONS_2=/Price:20.5 - -NEOFS_FSBUCKET_DIRECTORY=/storage/blob -NEOFS_BOLTBUCKET_PATH=/storage/meta - -NEOFS_REPLICATION_TIMEOUTS_TRANSPORT_PUT=300s -NEOFS_REPLICATION_TIMEOUTS_TRANSPORT_GET=300s -NEOFS_REPLICATION_TIMEOUTS_TRANSPORT_HEAD=150s -NEOFS_REPLICATION_TIMEOUTS_TRANSPORT_SEARCH=150s -NEOFS_REPLICATION_TIMEOUTS_TRANSPORT_RANGE_HASH=150s - -NEOFS_OBJECT_PUT_TIMEOUT=300s -NEOFS_OBJECT_PUT_LOG_ERRS=true -NEOFS_OBJECT_GET_TIMEOUT=300s -NEOFS_OBJECT_DELETE_TIMEOUT=150s -NEOFS_OBJECT_HEAD_TIMEOUT=150s -NEOFS_OBJECT_SEARCH_TIMEOUT=150s -NEOFS_OBJECT_RANGE_TIMEOUT=150s -NEOFS_OBJECT_RANGE_HASH_TIMEOUT=150s -NEOFS_OBJECT_DIAL_TIMEOUT=60s -# unlimited capacity for now -NEOFS_OBJECT_STORAGE_CAPACITY=0 - -NEOFS_PLACEMENT_WEIGHT_INHERITANCE_ENABLED=true -NEOFS_FSBUCKET_TREE_ENABLED=true -# INFRA-50 -NEOFS_INNERRING_TIMERS_EPOCH=300s -NEOFS_GOSSIP_SIMPLIFIED_MODE_ENABLED=false - -NEOFS_METRICS_ENABLED=true -NEOFS_METRICS_ADDRESS=:8180 -NEOFS_PPROF_ENABLED=true -NEOFS_PPROF_ADDRESS=:6160 - -# Reputation timeouts -NEOFS_REPUTATION_EIGENTRUST_WAIT_TIMEOUT=1m -NEOFS_REPUTATION_EIGENTRUST_REPORT_TIMEOUT=1m -NEOFS_REPUTATION_EIGENTRUST_TRANSPORT_CALL_TIMEOUT=10s - -# Swarm tweaks -NEOFS_SWARM_CONNECTIONS_IDLE=60m - -NEOFS_OBJECT_PUT_LOG_ERRS=true -NEOFS_PLUGINS_SENDNEOFS_KEYS_0=02b3622bf4017bdfe317c58aed5f4c753f206b7db896046fa7d774bbc4bf7f8dc2 +NEOFS_ACCOUNTING_SCRIPTHASH=39ff7eb35bb6357ebed9f244f2aa72e8e7557eaf +NEOFS_CONTAINER_SCRIPTHASH=4a445a72c5dba72c0c4e4634cff86c48dfe2c396 +NEOFS_NETMAP_SCRIPTHASH=f41ce4aceff0522ed6ce303c684fdddd690332a7 diff --git a/services/storage/docker-compose.yml b/services/storage/docker-compose.yml index c349ca5..f3fd133 100644 --- a/services/storage/docker-compose.yml +++ b/services/storage/docker-compose.yml @@ -4,12 +4,8 @@ version: "2.4" services: storage01: - image: nspccdev/neofs-storage:${NODE_VERSION} + image: ${NODE_IMAGE}:${NODE_VERSION} container_name: s01.localtest.nspcc.ru - healthcheck: - test: ["CMD", "neofs-node", "-health"] - timeout: 10s - retries: 50 networks: storage_int: internet: @@ -18,19 +14,13 @@ services: volumes: [ "./01.key:/01.key" ] env_file: [ ".env", ".storage.env" ] environment: - - NEOFS_NODE_PRIVATE_KEY=/01.key + - NEOFS_NODE_KEY=/01.key - NEOFS_NODE_ADDRESS=s01.localtest.nspcc.ru:8080 - - NEOFS_NODE_LOCATION=NorthAmerica - - NEOFS_NODE_COUNTRY=US - - NEOFS_NODE_CITY=NewYork + - NEOFS_GRPC_ENDPOINT=s01.localtest.nspcc.ru:8080 storage02: - image: nspccdev/neofs-storage:${NODE_VERSION} + image: ${NODE_IMAGE}:${NODE_VERSION} container_name: s02.localtest.nspcc.ru - healthcheck: - test: ["CMD", "neofs-node", "-health"] - timeout: 10s - retries: 50 networks: storage_int: internet: @@ -39,19 +29,13 @@ services: volumes: [ "./02.key:/02.key" ] env_file: [ ".env", ".storage.env" ] environment: - - NEOFS_NODE_PRIVATE_KEY=/02.key + - NEOFS_NODE_KEY=/02.key - NEOFS_NODE_ADDRESS=s02.localtest.nspcc.ru:8080 - - NEOFS_NODE_LOCATION=Asia - - NEOFS_NODE_COUNTRY=SG - - NEOFS_NODE_CITY=Singapore + - NEOFS_GRPC_ENDPOINT=s02.localtest.nspcc.ru:8080 storage03: - image: nspccdev/neofs-storage:${NODE_VERSION} + image: ${NODE_IMAGE}:${NODE_VERSION} container_name: s03.localtest.nspcc.ru - healthcheck: - test: ["CMD", "neofs-node", "-health"] - timeout: 10s - retries: 50 networks: storage_int: internet: @@ -60,19 +44,13 @@ services: volumes: [ "./03.key:/03.key" ] env_file: [ ".env", ".storage.env" ] environment: - - NEOFS_NODE_PRIVATE_KEY=/03.key + - NEOFS_NODE_KEY=/03.key - NEOFS_NODE_ADDRESS=s03.localtest.nspcc.ru:8080 - - NEOFS_NODE_LOCATION=Europe - - NEOFS_NODE_COUNTRY=DE - - NEOFS_NODE_CITY=Frankfurt + - NEOFS_GRPC_ENDPOINT=s03.localtest.nspcc.ru:8080 storage04: - image: nspccdev/neofs-storage:${NODE_VERSION} + image: ${NODE_IMAGE}:${NODE_VERSION} container_name: s04.localtest.nspcc.ru - healthcheck: - test: ["CMD", "neofs-node", "-health"] - timeout: 10s - retries: 50 networks: storage_int: internet: @@ -81,23 +59,9 @@ services: volumes: [ "./04.key:/04.key" ] env_file: [ ".env", ".storage.env" ] environment: - - NEOFS_NODE_PRIVATE_KEY=/04.key - - NEOFS_NODE_ADDRESS=s04.localtest.nspcc.ru:8080 - - NEOFS_NODE_LOCATION=Europe - - NEOFS_NODE_COUNTRY=GB - - NEOFS_NODE_CITY=London - - neofs-storage-healthy: - image: alpine - depends_on: - storage01: - condition: service_healthy - storage02: - condition: service_healthy - storage03: - condition: service_healthy - storage04: - condition: service_healthy + - NEOFS_NODE_KEY=/04.key + - NEOFS_NODE_ADDRESS=s04.localtest.nspcc.ru:8080 + - NEOFS_GRPC_ENDPOINT=s04.localtest.nspcc.ru:8080 networks: storage_int: