From 997c62e0f600b489d306d1ac3c5cc88a809fd199 Mon Sep 17 00:00:00 2001 From: Leonard Lyubich Date: Wed, 9 Nov 2022 14:47:24 +0400 Subject: [PATCH] [#xxx] Add NeoFS S3 gateway image Signed-off-by: Leonard Lyubich --- .env | 1 + docker-compose.cross.yml | 20 ++++++++++++++++++++ docker-compose.yml | 14 ++++++++++++++ s3/s3.env | 24 ++++++++++++++++++++++++ s3/wallet.json | 30 ++++++++++++++++++++++++++++++ 5 files changed, 89 insertions(+) create mode 100644 s3/s3.env create mode 100644 s3/wallet.json diff --git a/.env b/.env index dcb06d6..e650b8a 100644 --- a/.env +++ b/.env @@ -2,3 +2,4 @@ NEOGO_VERSION=0.99.3 AIO_VERSION=0.34.0 HTTPGW_VERSION=0.24.0 RESTGW_VERSION=0.5.0 +S3GW_VERSION=0.25.0 diff --git a/docker-compose.cross.yml b/docker-compose.cross.yml index f6e1f1e..2defaab 100644 --- a/docker-compose.cross.yml +++ b/docker-compose.cross.yml @@ -134,6 +134,26 @@ services: depends_on: - http_gw + s3_gw: + image: nspccdev/neofs-s3-gw:${S3GW_VERSION} + domainname: neofs + hostname: s3_gw + container_name: s3_gw + restart: on-failure + stop_signal: SIGKILL + env_file: [ "./s3/s3.env" ] + environment: + - S3_GW_LISTEN_ADDRESS=:9000 + - S3_GW_PEERS_0_ADDRESS=sn:8080 + - S3_GW_RPC_ENDPOINT=http://morph:30333 + - S3_GW_TREE_SERVICE=sn:8080 + volumes: + - ./s3/wallet.json:/config/wallet.json + ports: + - "9000:9000" # S3 Gateway endpoint + depends_on: + - sn + volumes: data: cache: diff --git a/docker-compose.yml b/docker-compose.yml index c7482fe..3d2b492 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -115,6 +115,20 @@ services: depends_on: - http_gw + s3_gw: + image: nspccdev/neofs-s3-gw:${S3GW_VERSION} + domainname: neofs + hostname: s3_gw + container_name: s3_gw + restart: on-failure + network_mode: host + volumes: + - ./s3/wallet.json:/config/wallet.json + stop_signal: SIGKILL + env_file: [ "./s3/s3.env" ] + depends_on: + - sn + volumes: data: cache: diff --git a/s3/s3.env b/s3/s3.env new file mode 100644 index 0000000..842c5a3 --- /dev/null +++ b/s3/s3.env @@ -0,0 +1,24 @@ +S3_GW_LISTEN_ADDRESS=localhost:9000 +S3_GW_RPC_ENDPOINT=http://localhost:30333 + +S3_GW_LOGGER_LEVEL=debug + +S3_GW_REBALANCE_INTERVAL=5m +S3_GW_CONNECT_TIMEOUT=1m +S3_GW_HEALTHCHECK_TIMEOUT=5m + +S3_GW_RESOLVE_ORDER=nns dns + +S3_GW_DEFAULT_POLICY="REP 1" + +S3_GW_PPROF_ENABLED=false +S3_GW_PROMETHEUS_ENABLED=false + +S3_GW_WALLET_PATH=/config/wallet.json +S3_GW_WALLET_ADDRESS=NPFCqWHfi9ixCJRu7DABRbVfXRbkSEr9Vo +S3_GW_WALLET_PASSPHRASE=one + +S3_GW_TREE_SERVICE=localhost:8080 + +S3_GW_PEERS_0_ADDRESS=localhost:8080 +S3_GW_PEERS_0_PRIORITY=1 diff --git a/s3/wallet.json b/s3/wallet.json new file mode 100644 index 0000000..6fad578 --- /dev/null +++ b/s3/wallet.json @@ -0,0 +1,30 @@ +{ + "version": "3.0", + "accounts": [ + { + "address": "NPFCqWHfi9ixCJRu7DABRbVfXRbkSEr9Vo", + "key": "6PYTAGjdaeicUDPqGv9mmgwb9kTwimWJJmmfNqJSDGH9qM79zSRcL9oHiB", + "label": "S3 Gateway", + "contract": { + "script": "DCECcuPzZCZ2VyDsm2jKEOMnU6xEWO2bF1dvOvBWTDFYB1ZBVuezJw==", + "parameters": [ + { + "name": "parameter0", + "type": "Signature" + } + ], + "deployed": false + }, + "lock": false, + "isDefault": false + } + ], + "scrypt": { + "n": 16384, + "r": 8, + "p": 8 + }, + "extra": { + "Tokens": null + } +}