Skip to content

Commit 5a454cb

Browse files
authored
Merge pull request #1138 from movementlabsxyz/feature/da-sequencer-node
feat: da-sequencer
2 parents 071ff67 + a349ae1 commit 5a454cb

File tree

159 files changed

+8787
-2052
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

159 files changed

+8787
-2052
lines changed

.envrc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
if [[ -f "$PWD/.envrc.local" ]]; then
2+
echo direnv: using .envrc.local
3+
source "$PWD/.envrc.local"
4+
fi

.github/workflows/build-push-container.yml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,19 @@ jobs:
2727
architecture: [x86_64, arm64]
2828
runs-on: ${{ matrix.architecture == 'x86_64' && 'buildjet-16vcpu-ubuntu-2204' || 'buildjet-16vcpu-ubuntu-2204-arm' }}
2929
steps:
30-
30+
- name: Check label match
31+
if: >
32+
github.event_name == 'pull_request' && github.event.action == 'labeled'
33+
|| github.ref == 'refs/heads/main'
34+
|| startsWith(github.ref, 'refs/tags/')
35+
run: |
36+
echo "Label added: ${{ github.event.label.name }}"
37+
if [[ "${{ github.event_name }}" == "pull_request" && "${{ github.event.action }}" == "labeled" ]]; then
38+
if [[ "${{ github.event.label.name }}" != "cicd:movement-containers" ]]; then
39+
echo "Skipping container build as label does not match"
40+
exit 0
41+
fi
42+
fi
3143
- name: Checkout repository
3244
uses: actions/checkout@v4
3345
with:

.github/workflows/build-push-containers-all.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,6 @@ jobs:
2929
echo "${GITHUB_CONTEXT}"
3030
3131
build-push-checked-containers:
32-
33-
3432
uses: ./.github/workflows/build-push-container.yml
3533
name: Build Push Checked Containers
3634
secrets: inherit
@@ -52,7 +50,7 @@ jobs:
5250
container_name: ${{ matrix.container_name }}
5351

5452
build-push-checked-manifest:
55-
if: contains(github.event.pull_request.labels.*.name, 'cicd:movement-containers') || github.ref == 'refs/heads/main' || github.event.label.name == 'cicd:movement-containers'
53+
if: github.event.label.name == 'cicd:movement-containers' || github.ref == 'refs/heads/main' || github.event.label.name == 'cicd:movement-containers'
5654
uses: ./.github/workflows/build-push-manifest.yml
5755
name: Build Push Checked Manifest
5856
needs:
@@ -76,7 +74,7 @@ jobs:
7674
container_name: ${{ matrix.container_name }}
7775

7876
container-checks:
79-
if: contains(github.event.pull_request.labels.*.name, 'cicd:movement-containers') || github.ref == 'refs/heads/main' || github.event.label.name == 'cicd:movement-containers'
77+
if: github.event.label.name == 'cicd:movement-containers' || github.ref == 'refs/heads/main' || github.event.label.name == 'cicd:movement-containers'
8078
runs-on: buildjet-16vcpu-ubuntu-2204
8179
needs:
8280
- build-push-checked-manifest

.github/workflows/checks-all.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -366,7 +366,6 @@ jobs:
366366
cargo-fmt-check:
367367
name: Cargo Format Check
368368
runs-on: ubuntu-latest
369-
370369
steps:
371370
- name: Checkout repository
372371
uses: actions/checkout@v4

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,14 @@ profile.json
1919
./docker/compose/grafana-alloy/.env
2020
*.dat
2121
*.log
22+
test_log.txt
23+
test_result.txt
2224
venv
2325
*.pem
2426
*.jot.*
2527
*.jot
2628
*.env
29+
*.envrc.local
2730
.debug
2831
.out
32+
.direnv

Cargo.lock

Lines changed: 359 additions & 191 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 88 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -3,44 +3,48 @@
33
resolver = "2"
44

55
members = [
6-
"protocol-units/execution/maptos/dof",
7-
"protocol-units/execution/maptos/opt-executor",
8-
"protocol-units/execution/maptos/fin-view",
9-
"protocol-units/execution/maptos/util",
10-
"protocol-units/da/movement/protocol/*",
11-
"protocol-units/sequencing/memseq/*",
12-
"protocol-units/mempool/*",
13-
"protocol-units/syncing/*",
14-
"protocol-units/settlement/mcr/client",
15-
"protocol-units/settlement/mcr/config",
16-
"protocol-units/settlement/mcr/manager",
17-
"protocol-units/settlement/mcr/setup",
18-
"protocol-units/settlement/mcr/runner",
19-
"protocol-units/movement-rest",
20-
"protocol-units/access-control/aptos/account-whitelist",
21-
"util/buildtime",
22-
"util/buildtime/buildtime-helpers",
23-
"util/buildtime/buildtime-macros",
24-
"util/commander",
25-
"util/dot-movement",
26-
"util/flocks",
27-
"util/godfig",
28-
"util/movement-algs",
29-
"util/movement-types",
30-
"util/tracing",
31-
"util/syncador",
32-
"util/collections",
33-
"util/whitelist",
34-
"networks/movement/*",
35-
"benches/*",
36-
"util/signing/interface",
37-
"util/signing/integrations/aptos",
38-
"util/signing/providers/aws-kms",
39-
"util/signing/providers/hashicorp-vault",
40-
"util/signing/testing",
41-
"demo/hsm",
42-
"protocol-units/execution/maptos/framework/releases/*",
43-
"protocol-units/execution/maptos/framework/migrations/*",
6+
"protocol-units/execution/maptos/dof",
7+
"protocol-units/execution/maptos/opt-executor",
8+
"protocol-units/execution/maptos/fin-view",
9+
"protocol-units/execution/maptos/util",
10+
"protocol-units/da/movement/protocol/*",
11+
"protocol-units/sequencing/memseq/*",
12+
"protocol-units/mempool/*",
13+
"protocol-units/syncing/*",
14+
"protocol-units/settlement/mcr/client",
15+
"protocol-units/settlement/mcr/config",
16+
"protocol-units/settlement/mcr/manager",
17+
"protocol-units/settlement/mcr/setup",
18+
"protocol-units/settlement/mcr/runner",
19+
"protocol-units/movement-rest",
20+
"protocol-units/access-control/aptos/account-whitelist",
21+
"util/buildtime",
22+
"util/buildtime/buildtime-helpers",
23+
"util/buildtime/buildtime-macros",
24+
"util/commander",
25+
"util/dot-movement",
26+
"util/flocks",
27+
"util/godfig",
28+
"util/movement-algs",
29+
"util/movement-types",
30+
"util/tracing",
31+
"util/syncador",
32+
"util/collections",
33+
"util/whitelist",
34+
"networks/movement/*",
35+
"benches/*",
36+
"util/signing/interface",
37+
"util/signing/integrations/aptos",
38+
"util/signing/providers/aws-kms",
39+
"util/signing/providers/hashicorp-vault",
40+
"util/signing/testing",
41+
"demo/hsm",
42+
"protocol-units/execution/maptos/framework/releases/*",
43+
"protocol-units/execution/maptos/framework/migrations/*",
44+
"protocol-units/da-sequencer/config",
45+
"protocol-units/da-sequencer/setup",
46+
"protocol-units/da-sequencer/client",
47+
"protocol-units/da-sequencer/node"
4448
]
4549

4650
[workspace.package]
@@ -77,6 +81,12 @@ maptos-opt-executor = { path = "protocol-units/execution/maptos/opt-executor" }
7781
maptos-fin-view = { path = "protocol-units/execution/maptos/fin-view" }
7882
maptos-execution-util = { path = "protocol-units/execution/maptos/util" }
7983

84+
## movement da sequencer
85+
movement-da-sequencer-client = { path = "protocol-units/da-sequencer/client" }
86+
movement-da-sequencer-config = { path = "protocol-units/da-sequencer/config" }
87+
movement-da-sequencer-node = { path = "protocol-units/da-sequencer/node" }
88+
movement-da-sequencer-proto = { path = "protocol-units/da-sequencer/proto" }
89+
8090
# framework releases
8191
maptos-framework-release-util = { path = "protocol-units/execution/maptos/framework/releases/util" }
8292
aptos-framework-head-release = { path = "protocol-units/execution/maptos/framework/releases/head" }
@@ -151,44 +161,46 @@ borsh = { version = "0.10" } # todo: internalize jmt and bump
151161

152162
### We use a forked version so that we can override dependency versions. This is required
153163
### to be avoid dependency conflicts with other Sovereign Labs crates.
154-
aptos-api = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
155-
aptos-api-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
156-
aptos-bitvec = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
157-
aptos-block-executor = { git = "https://github.com/movementlabsxyz/aptos-core.git", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
158-
aptos-cached-packages = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
159-
aptos-config = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
160-
aptos-consensus-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
161-
aptos-crypto = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355", features = [
164+
aptos-api = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
165+
aptos-api-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
166+
aptos-bitvec = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
167+
aptos-block-executor = { git = "https://github.com/movementlabsxyz/aptos-core.git", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
168+
aptos-cached-packages = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
169+
aptos-config = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
170+
aptos-consensus-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
171+
aptos-crypto = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67", features = [
162172
"cloneable-private-keys",
163173
] }
164-
aptos-db = { git = "https://github.com/movementlabsxyz/aptos-core.git", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
165-
aptos-executor = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
166-
aptos-executor-test-helpers = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
167-
aptos-executor-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
168-
aptos-faucet-core = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
169-
aptos-framework = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
170-
aptos-language-e2e-tests = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
171-
aptos-mempool = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
172-
aptos-proptest-helpers = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
173-
aptos-sdk = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
174-
aptos-state-view = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
175-
aptos-storage-interface = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
176-
aptos-temppath = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
177-
aptos-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
178-
aptos-vm = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
179-
aptos-vm-genesis = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
180-
aptos-vm-logging = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
181-
aptos-vm-validator = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
182-
aptos-logger = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
183-
aptos-vm-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
184-
aptos-indexer = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
185-
aptos-indexer-grpc-fullnode = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
186-
aptos-indexer-grpc-table-info = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
187-
aptos-protos = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
188-
aptos-release-builder = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
189-
aptos-gas-schedule = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
190-
move-package = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
191-
movement = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "c34b9e9347a0e4c0440930796ba06555e8be3355" }
174+
175+
aptos-crypto-derive = { git = "https://github.com/movementlabsxyz/aptos-core.git", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
176+
aptos-db = { git = "https://github.com/movementlabsxyz/aptos-core.git", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
177+
aptos-executor = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
178+
aptos-executor-test-helpers = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
179+
aptos-executor-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
180+
aptos-faucet-core = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
181+
aptos-framework = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
182+
aptos-language-e2e-tests = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
183+
aptos-mempool = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
184+
aptos-proptest-helpers = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
185+
aptos-sdk = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
186+
aptos-state-view = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
187+
aptos-storage-interface = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
188+
aptos-temppath = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
189+
aptos-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
190+
aptos-vm = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
191+
aptos-vm-genesis = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
192+
aptos-vm-logging = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
193+
aptos-vm-validator = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
194+
aptos-logger = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
195+
aptos-vm-types = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
196+
aptos-indexer = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
197+
aptos-indexer-grpc-fullnode = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
198+
aptos-indexer-grpc-table-info = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
199+
aptos-protos = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
200+
aptos-release-builder = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
201+
aptos-gas-schedule = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
202+
move-package = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
203+
movement = { git = "https://github.com/movementlabsxyz/aptos-core", rev = "1d1cdbbd7fabb80dcb95ba5e23213faa072fab67" }
192204

193205
# Indexer
194206
processor = { git = "https://github.com/movementlabsxyz/aptos-indexer-processors", rev = "20be1190105908fd4fea4e78c330997658e9428e" }
@@ -327,7 +339,7 @@ tracing-subscriber = { version = "0.3", features = ["env-filter"] }
327339
tracing-test = "0.2.5"
328340
trie-db = "0.28.0"
329341
url = "2.2.2"
330-
ed25519-dalek = "2.1"
342+
ed25519-dalek = { version = "2.1", features = ["rand_core"] }
331343
ed25519 = "2.2.3"
332344
ring-compat = "0.8.0"
333345
zstd-sys = "2.0.9"
@@ -364,7 +376,7 @@ aws-sdk-s3 = "1.42.0"
364376
movement-client = { path = "networks/movement/movement-client" }
365377
simple_asn1 = "0.6.3"
366378
dotenv = "0.15.0"
367-
rand_core = "0.9.0"
379+
rand_core = { version = "0.9.0", features = ["std", "os_rng"] }
368380

369381
[workspace.lints.rust]
370382
dead_code = "deny" ## Alloy Dependencies
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
services:
2+
movement-da-sequencer:
3+
image: ghcr.io/movementlabsxyz/movement-full-node:${CONTAINER_REV}
4+
container_name: movement-da-sequencer
5+
environment:
6+
- DOT_MOVEMENT_PATH=/.movement
7+
- RUST_BACKTRACE=1
8+
command: da run
9+
volumes:
10+
- ${DOT_MOVEMENT_PATH}:/.movement
11+
ports:
12+
- "30730:30730"
13+
- "30931:30931"
14+
healthcheck:
15+
test: [ "CMD-SHELL", "nc -zv 0.0.0.0 30931" ]
16+
retries: 10
17+
interval: 10s
18+
timeout: 5s
19+
restart: on-failure:3
20+
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
services:
2+
movement-faucet-service:
3+
image: ghcr.io/movementlabsxyz/movement-faucet-service:${CONTAINER_REV}
4+
container_name: movement-faucet-service
5+
command: run-simple
6+
environment:
7+
- DOT_MOVEMENT_PATH=/.movement
8+
- RUST_BACKTRACE=1
9+
volumes:
10+
- ${DOT_MOVEMENT_PATH}:/.movement
11+
ports:
12+
- "30732:30732"
13+
depends_on:
14+
movement-full-node:
15+
condition: service_healthy
16+
healthcheck:
17+
test: [ "CMD-SHELL", "nc -zv 0.0.0.0 30732" ]
18+
retries: 10
19+
interval: 10s
20+
timeout: 5s
21+
restart: on-failure:10
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
services:
2+
movement-full-node:
3+
image: ghcr.io/movementlabsxyz/movement-full-node:${CONTAINER_REV}
4+
container_name: movement-full-node
5+
command: run
6+
environment:
7+
- DOT_MOVEMENT_PATH=/.movement
8+
- MOVEMENT_TIMING=info
9+
- RUST_BACKTRACE=1
10+
volumes:
11+
- ${DOT_MOVEMENT_PATH}:/.movement
12+
ports:
13+
- "30731:30731"
14+
- "30734:30734"
15+
- "9464:9464"
16+
healthcheck:
17+
test: [ "CMD-SHELL", "echo true" ]
18+
retries: 10
19+
interval: 10s
20+
timeout: 5s
21+
restart: on-failure:5
22+

0 commit comments

Comments
 (0)