Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions morph-node/.env_mpt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# MPT specific overrides (loaded after base env to override values)
GETH_ENTRYPOINT_FILE=./entrypoint-geth-mpt.sh
MPT_FORK_TIME=2000000000000

# MPT snapshot names
HOODI_MPT_SNAPSHOT_NAME=snapshot-20260211-1
MAINNET_MPT_SNAPSHOT_NAME=snapshot-20260211-1
19 changes: 19 additions & 0 deletions morph-node/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ JWT_SECRET_FILE_HOLESKY := $(JWT_SECRET_FILE)

JWT_SECRET_FILE_HOODI := $(JWT_SECRET_FILE)

include .env_mpt

generate-jwt:
@[ -f $(JWT_SECRET_FILE_MAINNET) ] || (echo "Generating $(JWT_SECRET_FILE_MAINNET)..." && openssl rand -hex 32 > $(JWT_SECRET_FILE_MAINNET) && echo "$(JWT_SECRET_FILE_MAINNET) created.")

Expand All @@ -31,6 +33,12 @@ run-holesky-node: generate-jwt-holesky
run-hoodi-node: generate-jwt-hoodi
docker-compose --env-file .env_hoodi up node &

run-hoodi-mpt-node: generate-jwt-hoodi
docker-compose --env-file .env_hoodi --env-file .env_mpt up node &

run-mainnet-mpt-node: generate-jwt
docker-compose --env-file .env --env-file .env_mpt up node &

stop-node:
docker stop morph-node morph-geth

Expand All @@ -47,6 +55,12 @@ run-holesky-validator: generate-jwt-holesky
run-hoodi-validator: generate-jwt-hoodi
docker-compose --env-file .env_hoodi up validator &

run-hoodi-mpt-validator: generate-jwt-hoodi
docker-compose --env-file .env_hoodi --env-file .env_mpt up validator &

run-mainnet-mpt-validator: generate-jwt
docker-compose --env-file .env --env-file .env_mpt up validator &

stop-validator:
docker stop validator-node morph-geth

Expand Down Expand Up @@ -93,6 +107,11 @@ download-and-decompress-hoodi-snapshot:
download-and-decompress-mainnet-snapshot:
$(call download-and-decompress,$(MAINNET_SNAPSHOT_NAME),https://snapshot.morphl2.io/mainnet)

download-and-decompress-hoodi-mpt-snapshot:
$(call download-and-decompress,$(HOODI_MPT_SNAPSHOT_NAME),https://snapshot.morphl2.io/hoodi)

download-and-decompress-mainnet-mpt-snapshot:
$(call download-and-decompress,$(MAINNET_MPT_SNAPSHOT_NAME),https://snapshot.morphl2.io/mainnet)



6 changes: 3 additions & 3 deletions morph-node/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ version: '3.8'
services:
geth:
container_name: morph-geth
image: ghcr.io/morph-l2/go-ethereum:2.1.1
image: ghcr.io/morph-l2/go-ethereum:2.1.2
restart: unless-stopped
ports:
- "8545:8545"
Expand All @@ -26,7 +26,7 @@ services:
depends_on:
geth:
condition: service_started
image: ghcr.io/morph-l2/node:0.4.10
image: ghcr.io/morph-l2/node:0.4.11
restart: unless-stopped
ports:
- "26656"
Expand All @@ -53,7 +53,7 @@ services:
depends_on:
geth:
condition: service_started
image: ghcr.io/morph-l2/node:0.4.10
image: ghcr.io/morph-l2/node:0.4.11
ports:
- "26660"
environment:
Expand Down
35 changes: 35 additions & 0 deletions morph-node/entrypoint-geth-mpt.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
#!/bin/sh

if [ ! -f /jwt-secret.txt ]; then
echo "Error: jwt-secret.txt not found. Please create it before starting the service."
exit 1
fi

MORPH_FLAG=${MORPH_FLAG:-"morph"}

COMMAND="geth \
--$MORPH_FLAG \
--morph-mpt
--datadir="./db" \
--verbosity=3 \
--http \
--http.corsdomain="*" \
--http.vhosts="*" \
--http.addr=0.0.0.0 \
--http.port=8545 \
--http.api=web3,debug,eth,txpool,net,morph,engine,admin \
--ws \
--ws.addr=0.0.0.0 \
--ws.port=8546 \
--ws.origins="*" \
--ws.api=web3,debug,eth,txpool,net,morph,engine,admin \
--authrpc.addr=0.0.0.0 \
--authrpc.port=8551 \
--authrpc.vhosts="*" \
--authrpc.jwtsecret="./jwt-secret.txt" \
--gcmode=archive \
--log.filename=./db/geth.log \
--metrics \
--metrics.addr=0.0.0.0"

eval $COMMAND