Part of [Create stack for lotus mainnet and calibration](https://www.notion.so/Create-stack-for-lotus-mainnet-and-calibration-700b4903f2004a4fb440ebb6922da954) - This PR is based on stack [mainnet-lotus](https://git.vdb.to/cerc-io/stack-orchestrator/src/branch/lotus-stack/stack_orchestrator/data/stacks/mainnet-lotus) in SO branch [lotus-stack](https://git.vdb.to/cerc-io/stack-orchestrator/src/branch/lotus-stack) - Use manually downloaded snapshot for running Lotus node with `DOCKER_LOTUS_IMPORT_SNAPSHOT` env - Support running Lotus node for Calibration network - Use `cerc-io/lotus` release [v1.27.0-rc3-interal-0.0.1](https://git.vdb.to/cerc-io/lotus/releases/tag/v1.27.0-rc3-interal-0.0.1) - Add Lotus node config params with default values - `LOTUS_FEVM_ENABLEETHRPC`: true - [Enables eth_rpc](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/documentation/en/default-lotus-config.toml#L248) - `LOTUS_EVENTS_ENABLEACTOREVENTSAPI`: true - [Enables the Actor events API that enables clients to consume events](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/documentation/en/default-lotus-config.toml#L279) - `LOTUS_INDEX_ENABLEMSGINDEX`: true - [Enables indexing of messages on chain](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/documentation/en/default-lotus-config.toml#L325) - Should be the fix for incorrect `eth_call` behaviour - `LOTUS_CHAINSTORE_ENABLESPLITSTORE`: true - [Enable the splitstore](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/blockstore/splitstore#splitstore-an-actively-scalable-blockstore-for-the-filecoin-chain) - `LOTUS_FEVM_ETHTXHASHMAPPINGLIFETIMEDAYS`: 0 - [Delete mappings that have been stored for more than x day in transaction hash lookup database](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/documentation/en/default-lotus-config.toml#L255) - LOTUS_FVM_CONCURRENCY: 4 - [Adjust the amount of threads used for more concurrent FMV execution](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/CHANGELOG.md?display=source#L1179) - LOTUS_SKIP_APPLY_TS_MESSAGE_CALL_WITH_GAS: 0 - [If node is a Storage Provider and is pushing many messages within a short period of time, then set to 1](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/CHANGELOG.md?display=source#L1179) - Some config params that were set previously but no longer used in release [v1.27.0-rc3-interal-0.0.1](https://git.vdb.to/cerc-io/lotus/releases/tag/v1.27.0-rc3-interal-0.0.1) - `LOTUS_FEVM_EVENTS_MAXFILTERHEIGHTRANGE` - `LOTUS_FEVM_EVENTS_FILTERTTL` - `ALLOWED_DELAY` - `LOTUS_FEVM_ENABLEETHHASHTOFILECOINCIDMAPPING` Reviewed-on: #1 Reviewed-by: ashwin <ashwin@noreply.git.vdb.to> Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to> Co-authored-by: Nabarun <nabarun@deepstacksoft.com> Co-committed-by: Nabarun <nabarun@deepstacksoft.com>
42 lines
1.7 KiB
YAML
42 lines
1.7 KiB
YAML
volumes:
|
|
parameters:
|
|
lotus-repo:
|
|
lotus_shared:
|
|
|
|
services:
|
|
lotus:
|
|
environment:
|
|
- DOCKER_LOTUS_IMPORT_SNAPSHOT=/var/lotus-snapshots/snapshot
|
|
- LOTUS_FEVM_ENABLEETHRPC=true
|
|
- LOTUS_API_LISTENADDRESS=/ip4/0.0.0.0/tcp/1234/http
|
|
- LOTUS_LIBP2P_LISTENADDRESSES=/ip4/0.0.0.0/tcp/1235,/ip6/::/tcp/1235,/ip4/0.0.0.0/udp/1235/quic-v1,/ip6/::/udp/1235/quic-v1,/ip4/0.0.0.0/udp/1235/quic-v1/webtransport,/ip6/::/udp/1235/quic-v1/webtransport
|
|
- LOTUS_NETWORK=${CERC_LOTUS_NETWORK:-mainnet}
|
|
- LOTUS_EVENTS_ENABLEACTOREVENTSAPI=${CERC_LOTUS_EVENTS_ENABLEACTOREVENTSAPI:-true}
|
|
- LOTUS_INDEX_ENABLEMSGINDEX=${CERC_LOTUS_INDEX_ENABLEMSGINDEX:-true}
|
|
- LOTUS_CHAINSTORE_ENABLESPLITSTORE=${CERC_LOTUS_CHAINSTORE_ENABLESPLITSTORE:-true}
|
|
- GOLOG_LOG_FMT=${CERC_GOLOG_LOG_FMT:-json}
|
|
- LOTUS_FEVM_ETHTXHASHMAPPINGLIFETIMEDAYS=${CERC_LOTUS_FEVM_ETHTXHASHMAPPINGLIFETIMEDAYS:-0}
|
|
- LOTUS_SKIP_APPLY_TS_MESSAGE_CALL_WITH_GAS=${CERC_LOTUS_SKIP_APPLY_TS_MESSAGE_CALL_WITH_GAS:-0}
|
|
- LOTUS_FVM_CONCURRENCY=${CERC_LOTUS_FVM_CONCURRENCY:-4}
|
|
image: cerc/lotus-node:local
|
|
volumes:
|
|
- ${CERC_LOTUS_SNAPSHOT_PATH}:/var/lotus-snapshots/snapshot
|
|
- parameters:/var/tmp/filecoin-proof-parameters
|
|
- lotus-repo:/var/lib/lotus
|
|
- lotus_shared:/root/.lotus
|
|
- ../config/lotus-node/docker-lotus-entrypoint.sh:/docker-lotus-entrypoint.sh
|
|
ports:
|
|
- "1234"
|
|
- "1235"
|
|
deploy:
|
|
restart_policy:
|
|
condition: on-failure
|
|
delay: 30s
|
|
entrypoint: ["sh", "/docker-lotus-entrypoint.sh"]
|
|
healthcheck:
|
|
test: ["CMD", "nc", "-vz", "localhost", "1234"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 40
|
|
start_period: 3s
|