Skip to content
Closed
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
44 changes: 42 additions & 2 deletions docker-compose-hekla.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,16 +48,55 @@ services:
- l2_execution_engine
- prover

l2_execution_engine_taiko_reth:
image: ghcr.io/tatsujinlabs/taiko-reth:nightly
restart: unless-stopped
platform: linux/amd64
pull_policy: always
stop_grace_period: 3m
volumes:
- l2_execution_engine_data:/data/taiko-reth
ports:
- "${PORT_L2_EXECUTION_ENGINE_METRICS}:6060"
- "${PORT_L2_EXECUTION_ENGINE_HTTP}:8545"
- "${PORT_L2_EXECUTION_ENGINE_WS}:8546"
- "${PORT_L2_EXECUTION_ENGINE_P2P}:${PORT_L2_EXECUTION_ENGINE_P2P}"
- "${PORT_L2_EXECUTION_ENGINE_P2P}:${PORT_L2_EXECUTION_ENGINE_P2P}/udp"
command: |
node
--http
--http.addr 0.0.0.0
--ws
--ws.addr 0.0.0.0
--authrpc.addr 0.0.0.0
--chain hekla
--bootnodes ${BOOT_NODES}
--datadir /data/taiko-reth
--log.file.directory /data/taiko-reth/logs
--metrics 0.0.0.0:6060
--color never
--enable-discv5-discovery
--port ${PORT_L2_EXECUTION_ENGINE_P2P}
--discovery.port ${PORT_L2_EXECUTION_ENGINE_P2P}
--max-inbound-peers ${MAXPEERS:-30}
--max-outbound-peers ${MAXPEERS:-100}
${RETH_ADDITIONAL_ARGS:-}
<<: *logging
profiles:
- l2_execution_engine_reth

taiko_client_driver:
image: us-docker.pkg.dev/evmchain/images/taiko-client:taiko-alethia-client-v1.7.0
restart: unless-stopped
pull_policy: always
depends_on:
- l2_execution_engine
Comment on lines -55 to -56
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can safely delete depends_on here since it's not working as expected anyway.

env_file:
- .env
environment:
JWT_PATH: /data/taiko-reth/jwt.hex
EXECUTION_ENGINE_ENDPOINT: l2_execution_engine_taiko_reth
volumes:
- l2_execution_engine_data:/data/taiko-geth
- l2_execution_engine_data:/data/taiko-reth
- ./script:/script
entrypoint:
- /bin/sh
Expand All @@ -66,6 +105,7 @@ services:
<<: *logging
profiles:
- l2_execution_engine
- l2_execution_engine_reth
- prover

taiko_client_prover_relayer:
Expand Down
44 changes: 42 additions & 2 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,15 +50,54 @@ services:
- prover
- proposer

l2_execution_engine_taiko_reth:
image: ghcr.io/tatsujinlabs/taiko-reth:nightly
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we fix a version?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will release 0.1.1 soon, lets try this nightly tag with taikoxyz/taiko-mono#19783 in this PR at first.

restart: unless-stopped
pull_policy: always
platform: linux/amd64
stop_grace_period: 3m
volumes:
- l2_execution_engine_data:/data/taiko-reth
ports:
- "${PORT_L2_EXECUTION_ENGINE_METRICS}:6060"
- "${PORT_L2_EXECUTION_ENGINE_HTTP}:8545"
- "${PORT_L2_EXECUTION_ENGINE_WS}:8546"
- "${PORT_L2_EXECUTION_ENGINE_P2P}:${PORT_L2_EXECUTION_ENGINE_P2P}"
- "${PORT_L2_EXECUTION_ENGINE_P2P}:${PORT_L2_EXECUTION_ENGINE_P2P}/udp"
command: |
./taiko-reth node
--http
--http.addr 0.0.0.0
--ws
--ws.addr 0.0.0.0
--authrpc.addr 0.0.0.0
--chain mainnet
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

are we really ready to use it for mainnet? I haventnfollowed the taiko-geth progress thus far.

Copy link
Collaborator Author

@davidtaikocha davidtaikocha Jul 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It can p2p sync then produce the newly proposed batches with taikoxyz/taiko-mono#19783 now, so far all hashes matched, so it's ok to add this option to let users try imo.

--bootnodes ${BOOT_NODES}
--datadir /data/taiko-reth
--log.file.directory /data/taiko-reth/logs
--metrics 0.0.0.0:6060
--color never
--enable-discv5-discovery
--port ${PORT_L2_EXECUTION_ENGINE_P2P}
--discovery.port ${PORT_L2_EXECUTION_ENGINE_P2P}
--max-inbound-peers ${MAXPEERS:-30}
--max-outbound-peers ${MAXPEERS:-100}
${RETH_ADDITIONAL_ARGS:-}
<<: *logging
profiles:
- l2_execution_engine_reth

taiko_client_driver:
image: us-docker.pkg.dev/evmchain/images/taiko-client:taiko-alethia-client-v1.5.2
restart: unless-stopped
pull_policy: always
depends_on:
- l2_execution_engine
env_file:
- .env
environment:
JWT_PATH: /data/taiko-reth/jwt.hex
EXECUTION_ENGINE_ENDPOINT: l2_execution_engine_taiko_reth
volumes:
- l2_execution_engine_data:/data/taiko-reth
- l2_execution_engine_data:/data/taiko-geth
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we fixed the EXECUTION_ENGINE_ENDPOINT is reth, let's remove all geth related config.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we don't want to add another taiko_client_driver_taiko_reth service, how to remove this in volumes?

- ./script:/script
entrypoint:
Expand All @@ -68,6 +107,7 @@ services:
<<: *logging
profiles:
- l2_execution_engine
- l2_execution_engine_reth
- prover
- proposer

Expand Down
18 changes: 12 additions & 6 deletions script/start-driver.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,30 @@

set -eou pipefail

L2_EE_HOST="${EXECUTION_ENGINE_ENDPOINT:-l2_execution_engine}"
JWT_SECRET_PATH="${JWT_PATH:-/data/taiko-geth/geth/jwtsecret}"

L2_WS="ws://${L2_EE_HOST}:8546"
L2_AUTH="http://${L2_EE_HOST}:8551"

if [ "$DISABLE_P2P_SYNC" = "false" ]; then
exec taiko-client driver \
--l1.ws "${L1_ENDPOINT_WS}" \
--l2.ws ws://l2_execution_engine:8546 \
--l2.ws "${L2_WS}" \
--l1.beacon "${L1_BEACON_HTTP}" \
--l2.auth http://l2_execution_engine:8551 \
--l2.auth "${L2_AUTH}" \
--taikoL1 "${TAIKO_L1_ADDRESS}" \
--taikoL2 "${TAIKO_L2_ADDRESS}" \
--jwtSecret /data/taiko-geth/geth/jwtsecret \
--jwtSecret "${JWT_SECRET_PATH}" \
--p2p.sync \
--p2p.checkPointSyncUrl "${P2P_SYNC_URL}"
else
exec taiko-client driver \
--l1.ws "${L1_ENDPOINT_WS}" \
--l2.ws ws://l2_execution_engine:8546 \
--l2.ws "${L2_WS}" \
--l1.beacon "${L1_BEACON_HTTP}" \
--l2.auth http://l2_execution_engine:8551 \
--l2.auth "${L2_AUTH}" \
--taikoL1 "${TAIKO_L1_ADDRESS}" \
--taikoL2 "${TAIKO_L2_ADDRESS}" \
--jwtSecret /data/taiko-geth/geth/jwtsecret
--jwtSecret "${JWT_SECRET_PATH}"
fi