some progress

This commit is contained in:
Para Dox
2025-04-10 14:43:11 +07:00
parent 5ce47e35dd
commit 20e9d26d44
219 changed files with 20641 additions and 43567 deletions

View File

@@ -1,55 +1,93 @@
# use at your own risk
services:
fantom-mainnet-archive:
build:
context: ./fantom
dockerfile: Dockerfile.opera
dockerfile: opera.Dockerfile
args:
VERSION: "${FANTOM_OPERA_VERSION:-release/txtracing/1.1.3-rc.5}"
REPO: "https://github.com/Fantom-foundation/go-opera.git"
stop_grace_period: 3m
volumes:
- "fantom-mainnet-opera-archive-trace:/datadir"
VERSION: release/txtracing/1.1.3-rc.5
REPO: https://github.com/Fantom-foundation/go-opera.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10897:10897"
- "10897:10897/udp"
- 10897:10897
- 10897:10897/udp
volumes:
- ${FANTOM_MAINNET_OPERA_ARCHIVE_TRACE_DATA:-fantom-mainnet-opera-archive-trace}:/datadir
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/mainnet/mainnet-5577-full-mpt.g
command:
- --datadir=/datadir
- --port=10897
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.migration.mode reformat
- --db.preset pbl-1
- --syncmode full
- --cache=${FANTOM_MAINNET_OPERA_ARCHIVE_TRACE_CACHE_MB:-16000}
- --tracenode
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/opera/mainnet/mainnet-5577-full-mpt.g"
restart: unless-stopped
command: >
--port=10897
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--ws.origins="*"
--rpc.gascap=600000000
--db.migration.mode reformat
--db.preset pbl-1
--syncmode full
--cache=${FANTOM_MAINNET_OPERA_ARCHIVE_TRACE_CACHE_MB:-16000}
--tracenode
--bootnodes=enode://94dfec3eb6e50187d22d12f7dd965169bab5a63022934ef0b3b82a819574e0940b5bcb471f62360f1b58cf61a89e634bd14ae7c2e29ce48088890f4a7aff44fe@75.98.207.227:5050,enode://7fb3f43273f4dfeb19c3129c6ed999e14246d2f219ff284d0ef87417cd9514c6d542abc988a654b4a77005ea896c5b4e4ca0d40f97f3bf9ee37be33cc749835f@209.172.40.68:5050,enode://27a80a1db08a40636415d4ff9bb272882b6a6f97a9a5d596006de843f35cbbc679e5252d89d3de05bd74c36cf9f5ce2446dd66cdd5dc7e942a585eb4add61124@37.27.70.18:5050,enode://946fef1538abd165f8bd2ae1c290e7689ff5e209ab6c085eaced9b91e93684b1efe05f79a9a9b460504c450065baaeda5ecb72c03f8adf7e7a559042ce4950da@136.243.252.124:5078,enode://cf762e3a68f8a96676d6383cd3286b85ef7454ef37bb39283efe00d3d573d88f05db3daab7c35a4d3ba9edd9d089e359a25de5beeb24f79f6c1b9e5341958cee@15.235.54.211:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-mainnet-opera-archive-trace-stripprefix.stripprefix.prefixes=/fantom-mainnet-archive"
- "traefik.http.services.fantom-mainnet-opera-archive-trace.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-mainnet-opera-archive-trace.entrypoints=websecure"
- "traefik.http.routers.fantom-mainnet-opera-archive-trace.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-mainnet-opera-archive-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet-archive`)"
- "traefik.http.routers.fantom-mainnet-opera-archive-trace.middlewares=fantom-mainnet-opera-archive-trace-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-mainnet-opera-archive-trace-stripprefix.stripprefix.prefixes=/fantom-mainnet-archive
- traefik.http.services.fantom-mainnet-opera-archive-trace.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-archive-trace.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-archive-trace.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-archive-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet-archive`)}
- ${NO_SSL:+traefik.http.routers.fantom-mainnet-opera-archive-trace.rule=PathPrefix(`/fantom-mainnet-archive`)}
- traefik.http.routers.fantom-mainnet-opera-archive-trace.middlewares=fantom-mainnet-opera-archive-trace-stripprefix, ipwhitelist
volumes:
fantom-mainnet-opera-archive-trace:
fantom-mainnet-opera-archive-trace:
x-upstreams:
- chain: fantom
method-groups:
enabled:
- debug
- filter
- trace
methods:
disabled:
enabled:

View File

@@ -1,55 +1,92 @@
# use at your own risk
services:
fantom-mainnet-archive:
build:
context: ./fantom
dockerfile: Dockerfile.opera
dockerfile: opera.Dockerfile
args:
VERSION: "${FANTOM_OPERA_VERSION:-v1.1.3-rc.5}"
REPO: "https://github.com/Fantom-foundation/go-opera.git"
stop_grace_period: 3m
volumes:
- "fantom-mainnet-opera-archive:/datadir"
VERSION: v1.1.3-rc.5
REPO: https://github.com/Fantom-foundation/go-opera.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10723:10723"
- "10723:10723/udp"
- 10897:10897
- 10897:10897/udp
volumes:
- ${FANTOM_MAINNET_OPERA_ARCHIVE_DATA:-fantom-mainnet-opera-archive}:/datadir
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/mainnet/mainnet-5577-full-mpt.g
command:
- --datadir=/datadir
- --port=10897
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.migration.mode reformat
- --db.preset pbl-1
- --syncmode full
- --cache=${FANTOM_MAINNET_OPERA_ARCHIVE_CACHE_MB:-16000}
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/opera/mainnet/mainnet-5577-full-mpt.g"
restart: unless-stopped
command: >
--port=10723
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--ws.origins="*"
--rpc.gascap=600000000
--db.migration.mode reformat
--db.preset pbl-1
--syncmode full
--cache=${FANTOM_MAINNET_OPERA_ARCHIVE_CACHE_MB:-16000}
--bootnodes=enode://94dfec3eb6e50187d22d12f7dd965169bab5a63022934ef0b3b82a819574e0940b5bcb471f62360f1b58cf61a89e634bd14ae7c2e29ce48088890f4a7aff44fe@75.98.207.227:5050,enode://7fb3f43273f4dfeb19c3129c6ed999e14246d2f219ff284d0ef87417cd9514c6d542abc988a654b4a77005ea896c5b4e4ca0d40f97f3bf9ee37be33cc749835f@209.172.40.68:5050,enode://27a80a1db08a40636415d4ff9bb272882b6a6f97a9a5d596006de843f35cbbc679e5252d89d3de05bd74c36cf9f5ce2446dd66cdd5dc7e942a585eb4add61124@37.27.70.18:5050,enode://946fef1538abd165f8bd2ae1c290e7689ff5e209ab6c085eaced9b91e93684b1efe05f79a9a9b460504c450065baaeda5ecb72c03f8adf7e7a559042ce4950da@136.243.252.124:5078,enode://cf762e3a68f8a96676d6383cd3286b85ef7454ef37bb39283efe00d3d573d88f05db3daab7c35a4d3ba9edd9d089e359a25de5beeb24f79f6c1b9e5341958cee@15.235.54.211:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-mainnet-opera-archive-stripprefix.stripprefix.prefixes=/fantom-mainnet-archive"
- "traefik.http.services.fantom-mainnet-opera-archive.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-mainnet-opera-archive.entrypoints=websecure"
- "traefik.http.routers.fantom-mainnet-opera-archive.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-mainnet-opera-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet-archive`)"
- "traefik.http.routers.fantom-mainnet-opera-archive.middlewares=fantom-mainnet-opera-archive-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-mainnet-opera-archive-stripprefix.stripprefix.prefixes=/fantom-mainnet-archive
- traefik.http.services.fantom-mainnet-opera-archive.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-archive.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-archive.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet-archive`)}
- ${NO_SSL:+traefik.http.routers.fantom-mainnet-opera-archive.rule=PathPrefix(`/fantom-mainnet-archive`)}
- traefik.http.routers.fantom-mainnet-opera-archive.middlewares=fantom-mainnet-opera-archive-stripprefix, ipwhitelist
volumes:
fantom-mainnet-opera-archive:
fantom-mainnet-opera-archive:
x-upstreams:
- chain: fantom
method-groups:
enabled:
- debug
- filter
methods:
disabled:
enabled:

View File

@@ -1,55 +1,93 @@
# use at your own risk
services:
fantom-mainnet:
build:
context: ./fantom
dockerfile: Dockerfile.opera
dockerfile: opera.Dockerfile
args:
VERSION: "${FANTOM_OPERA_VERSION:-release/txtracing/1.1.3-rc.5}"
REPO: "https://github.com/Fantom-foundation/go-opera.git"
stop_grace_period: 3m
volumes:
- "fantom-mainnet-opera-pruned-trace:/datadir"
VERSION: release/txtracing/1.1.3-rc.5
REPO: https://github.com/Fantom-foundation/go-opera.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10916:10916"
- "10916:10916/udp"
- 10897:10897
- 10897:10897/udp
volumes:
- ${FANTOM_MAINNET_OPERA_PRUNED_TRACE_DATA:-fantom-mainnet-opera-pruned-trace}:/datadir
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/mainnet/mainnet-109331-no-history.g
command:
- --datadir=/datadir
- --port=10897
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.migration.mode reformat
- --db.preset pbl-1
- --syncmode snap
- --cache=${FANTOM_MAINNET_OPERA_PRUNED_TRACE_CACHE_MB:-16000}
- --tracenode
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/opera/mainnet/mainnet-109331-no-history.g"
restart: unless-stopped
command: >
--port=10916
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--ws.origins="*"
--rpc.gascap=600000000
--db.migration.mode reformat
--db.preset pbl-1
--syncmode=snap
--cache=${FANTOM_MAINNET_OPERA_PRUNED_TRACE_CACHE_MB:-16000}
--tracenode
--bootnodes=enode://94dfec3eb6e50187d22d12f7dd965169bab5a63022934ef0b3b82a819574e0940b5bcb471f62360f1b58cf61a89e634bd14ae7c2e29ce48088890f4a7aff44fe@75.98.207.227:5050,enode://7fb3f43273f4dfeb19c3129c6ed999e14246d2f219ff284d0ef87417cd9514c6d542abc988a654b4a77005ea896c5b4e4ca0d40f97f3bf9ee37be33cc749835f@209.172.40.68:5050,enode://27a80a1db08a40636415d4ff9bb272882b6a6f97a9a5d596006de843f35cbbc679e5252d89d3de05bd74c36cf9f5ce2446dd66cdd5dc7e942a585eb4add61124@37.27.70.18:5050,enode://946fef1538abd165f8bd2ae1c290e7689ff5e209ab6c085eaced9b91e93684b1efe05f79a9a9b460504c450065baaeda5ecb72c03f8adf7e7a559042ce4950da@136.243.252.124:5078,enode://cf762e3a68f8a96676d6383cd3286b85ef7454ef37bb39283efe00d3d573d88f05db3daab7c35a4d3ba9edd9d089e359a25de5beeb24f79f6c1b9e5341958cee@15.235.54.211:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-mainnet-opera-pruned-trace-stripprefix.stripprefix.prefixes=/fantom-mainnet"
- "traefik.http.services.fantom-mainnet-opera-pruned-trace.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-mainnet-opera-pruned-trace.entrypoints=websecure"
- "traefik.http.routers.fantom-mainnet-opera-pruned-trace.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-mainnet-opera-pruned-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet`)"
- "traefik.http.routers.fantom-mainnet-opera-pruned-trace.middlewares=fantom-mainnet-opera-pruned-trace-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-mainnet-opera-pruned-trace-stripprefix.stripprefix.prefixes=/fantom-mainnet
- traefik.http.services.fantom-mainnet-opera-pruned-trace.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-pruned-trace.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-pruned-trace.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-pruned-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet`)}
- ${NO_SSL:+traefik.http.routers.fantom-mainnet-opera-pruned-trace.rule=PathPrefix(`/fantom-mainnet`)}
- traefik.http.routers.fantom-mainnet-opera-pruned-trace.middlewares=fantom-mainnet-opera-pruned-trace-stripprefix, ipwhitelist
volumes:
fantom-mainnet-opera-pruned-trace:
fantom-mainnet-opera-pruned-trace:
x-upstreams:
- chain: fantom
method-groups:
enabled:
- debug
- filter
- trace
methods:
disabled:
enabled:

View File

@@ -1,55 +1,92 @@
# use at your own risk
services:
fantom-mainnet:
build:
context: ./fantom
dockerfile: Dockerfile.opera
dockerfile: opera.Dockerfile
args:
VERSION: "${FANTOM_OPERA_VERSION:-v1.1.3-rc.5}"
REPO: "https://github.com/Fantom-foundation/go-opera.git"
stop_grace_period: 3m
volumes:
- "fantom-mainnet-opera-pruned:/datadir"
VERSION: v1.1.3-rc.5
REPO: https://github.com/Fantom-foundation/go-opera.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10439:10439"
- "10439:10439/udp"
- 10897:10897
- 10897:10897/udp
volumes:
- ${FANTOM_MAINNET_OPERA_PRUNED_DATA:-fantom-mainnet-opera-pruned}:/datadir
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/mainnet/mainnet-109331-no-history.g
command:
- --datadir=/datadir
- --port=10897
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.migration.mode reformat
- --db.preset pbl-1
- --syncmode snap
- --cache=${FANTOM_MAINNET_OPERA_PRUNED_CACHE_MB:-16000}
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/opera/mainnet/mainnet-109331-no-history.g"
restart: unless-stopped
command: >
--port=10439
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--ws.origins="*"
--rpc.gascap=600000000
--db.migration.mode reformat
--db.preset pbl-1
--syncmode snap
--cache=${FANTOM_MAINNET_OPERA_PRUNED_CACHE_MB:-16000}
--bootnodes=enode://94dfec3eb6e50187d22d12f7dd965169bab5a63022934ef0b3b82a819574e0940b5bcb471f62360f1b58cf61a89e634bd14ae7c2e29ce48088890f4a7aff44fe@75.98.207.227:5050,enode://7fb3f43273f4dfeb19c3129c6ed999e14246d2f219ff284d0ef87417cd9514c6d542abc988a654b4a77005ea896c5b4e4ca0d40f97f3bf9ee37be33cc749835f@209.172.40.68:5050,enode://27a80a1db08a40636415d4ff9bb272882b6a6f97a9a5d596006de843f35cbbc679e5252d89d3de05bd74c36cf9f5ce2446dd66cdd5dc7e942a585eb4add61124@37.27.70.18:5050,enode://946fef1538abd165f8bd2ae1c290e7689ff5e209ab6c085eaced9b91e93684b1efe05f79a9a9b460504c450065baaeda5ecb72c03f8adf7e7a559042ce4950da@136.243.252.124:5078,enode://cf762e3a68f8a96676d6383cd3286b85ef7454ef37bb39283efe00d3d573d88f05db3daab7c35a4d3ba9edd9d089e359a25de5beeb24f79f6c1b9e5341958cee@15.235.54.211:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-mainnet-opera-pruned-stripprefix.stripprefix.prefixes=/fantom-mainnet"
- "traefik.http.services.fantom-mainnet-opera-pruned.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-mainnet-opera-pruned.entrypoints=websecure"
- "traefik.http.routers.fantom-mainnet-opera-pruned.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-mainnet-opera-pruned.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet`)"
- "traefik.http.routers.fantom-mainnet-opera-pruned.middlewares=fantom-mainnet-opera-pruned-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-mainnet-opera-pruned-stripprefix.stripprefix.prefixes=/fantom-mainnet
- traefik.http.services.fantom-mainnet-opera-pruned.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-pruned.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-pruned.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-opera-pruned.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet`)}
- ${NO_SSL:+traefik.http.routers.fantom-mainnet-opera-pruned.rule=PathPrefix(`/fantom-mainnet`)}
- traefik.http.routers.fantom-mainnet-opera-pruned.middlewares=fantom-mainnet-opera-pruned-stripprefix, ipwhitelist
volumes:
fantom-mainnet-opera-pruned:
fantom-mainnet-opera-pruned:
x-upstreams:
- chain: fantom
method-groups:
enabled:
- debug
- filter
methods:
disabled:
enabled:

View File

@@ -1,55 +1,93 @@
# use at your own risk
services:
fantom-testnet-archive:
build:
context: ./fantom
dockerfile: Dockerfile.opera
dockerfile: opera.Dockerfile
args:
VERSION: "${FANTOM_OPERA_VERSION:-release/txtracing/1.1.3-rc.5}"
REPO: "https://github.com/Fantom-foundation/go-opera.git"
stop_grace_period: 3m
volumes:
- "fantom-testnet-opera-archive-trace:/datadir"
VERSION: release/txtracing/1.1.3-rc.5
REPO: https://github.com/Fantom-foundation/go-opera.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10196:10196"
- "10196:10196/udp"
- 10196:10196
- 10196:10196/udp
volumes:
- ${FANTOM_TESTNET_OPERA_ARCHIVE_TRACE_DATA:-fantom-testnet-opera-archive-trace}:/datadir
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/testnet/testnet-2458-full-mpt.g
command:
- --datadir=/datadir
- --port=10196
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.migration.mode reformat
- --db.preset pbl-1
- --syncmode full
- --cache=${FANTOM_TESTNET_OPERA_ARCHIVE_TRACE_CACHE_MB:-16000}
- --tracenode
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/opera/testnet/testnet-2458-full-mpt.g"
restart: unless-stopped
command: >
--port=10196
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--ws.origins="*"
--rpc.gascap=600000000
--db.migration.mode reformat
--db.preset pbl-1
--syncmode full
--cache=${FANTOM_TESTNET_OPERA_ARCHIVE_TRACE_CACHE_MB:-16000}
--tracenode
--bootnodes=enode://2411cdad2780bf969c0bd6f19b53ac6683710d50f19a7604248d8a6a810d3d6369dffb08535530095c151ecad143393e4fbca2d11f62377fe15b3df4d9883053@34.172.30.235:5050,enode://6f434dc43f826f7c3c817ba7fbe7842aa47c50d1e77a6b57ec51313fd88c7f006240baa105b795712922a05e1b548d413ea6d32d8c1c8feb9ffc206a6c9e37ce@34.55.131.153:5050,enode://64e69ec1f30be48aa8d5f3e6cadf15d06d846d40918f3906e6efbc4a3421f0cc04e3e4f88569b5c90306bbc16ca15df6898ad71b8a73aa36284f1c3076f2956e@35.195.64.211:5050,enode://a76d94105f12d3fb5c31df5a59448d95b723d94543620a02f72ee990e048c43df940f4969ab06d436ef8976c49ec9c2a671c2f5af8d93af911cef63de329a8b8@35.239.100.93:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://544f06ceaddcf508a13326d95518a524e14f4980723c9dc5cb8560635a7faa7f8f91483faed19dacd7d251abf72b4a1b0bcacaced1255deb93414d097221a9bc@35.224.88.189:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://2cd3fcfe9671d81c0e8bb76bc81a430882ce5d99199c20a004da97bec48e9b03c02c3b6d95edb77498ce2dd8e090c4ce76349e775af7540b04a6e9303e5b69cd@104.155.31.23:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-testnet-opera-archive-trace-stripprefix.stripprefix.prefixes=/fantom-testnet-archive"
- "traefik.http.services.fantom-testnet-opera-archive-trace.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-testnet-opera-archive-trace.entrypoints=websecure"
- "traefik.http.routers.fantom-testnet-opera-archive-trace.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-testnet-opera-archive-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet-archive`)"
- "traefik.http.routers.fantom-testnet-opera-archive-trace.middlewares=fantom-testnet-opera-archive-trace-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-testnet-opera-archive-trace-stripprefix.stripprefix.prefixes=/fantom-testnet-archive
- traefik.http.services.fantom-testnet-opera-archive-trace.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-archive-trace.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-archive-trace.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-archive-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet-archive`)}
- ${NO_SSL:+traefik.http.routers.fantom-testnet-opera-archive-trace.rule=PathPrefix(`/fantom-testnet-archive`)}
- traefik.http.routers.fantom-testnet-opera-archive-trace.middlewares=fantom-testnet-opera-archive-trace-stripprefix, ipwhitelist
volumes:
fantom-testnet-opera-archive-trace:
fantom-testnet-opera-archive-trace:
x-upstreams:
- chain: fantom-testnet
method-groups:
enabled:
- debug
- filter
- trace
methods:
disabled:
enabled:

View File

@@ -1,55 +1,92 @@
# use at your own risk
services:
fantom-testnet-archive:
build:
context: ./fantom
dockerfile: Dockerfile.opera
dockerfile: opera.Dockerfile
args:
VERSION: "${FANTOM_OPERA_VERSION:-v1.1.3-rc.5}"
REPO: "https://github.com/Fantom-foundation/go-opera.git"
stop_grace_period: 3m
volumes:
- "fantom-testnet-opera-archive:/datadir"
VERSION: v1.1.3-rc.5
REPO: https://github.com/Fantom-foundation/go-opera.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10055:10055"
- "10055:10055/udp"
- 10196:10196
- 10196:10196/udp
volumes:
- ${FANTOM_TESTNET_OPERA_ARCHIVE_DATA:-fantom-testnet-opera-archive}:/datadir
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/testnet/testnet-2458-full-mpt.g
command:
- --datadir=/datadir
- --port=10196
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.migration.mode reformat
- --db.preset pbl-1
- --syncmode full
- --cache=${FANTOM_TESTNET_OPERA_ARCHIVE_CACHE_MB:-16000}
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/opera/testnet/testnet-2458-full-mpt.g"
restart: unless-stopped
command: >
--port=10055
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--ws.origins="*"
--rpc.gascap=600000000
--db.migration.mode reformat
--db.preset pbl-1
--syncmode full
--cache=${FANTOM_TESTNET_OPERA_ARCHIVE_CACHE_MB:-16000}
--bootnodes=enode://2411cdad2780bf969c0bd6f19b53ac6683710d50f19a7604248d8a6a810d3d6369dffb08535530095c151ecad143393e4fbca2d11f62377fe15b3df4d9883053@34.172.30.235:5050,enode://6f434dc43f826f7c3c817ba7fbe7842aa47c50d1e77a6b57ec51313fd88c7f006240baa105b795712922a05e1b548d413ea6d32d8c1c8feb9ffc206a6c9e37ce@34.55.131.153:5050,enode://64e69ec1f30be48aa8d5f3e6cadf15d06d846d40918f3906e6efbc4a3421f0cc04e3e4f88569b5c90306bbc16ca15df6898ad71b8a73aa36284f1c3076f2956e@35.195.64.211:5050,enode://a76d94105f12d3fb5c31df5a59448d95b723d94543620a02f72ee990e048c43df940f4969ab06d436ef8976c49ec9c2a671c2f5af8d93af911cef63de329a8b8@35.239.100.93:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://544f06ceaddcf508a13326d95518a524e14f4980723c9dc5cb8560635a7faa7f8f91483faed19dacd7d251abf72b4a1b0bcacaced1255deb93414d097221a9bc@35.224.88.189:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://2cd3fcfe9671d81c0e8bb76bc81a430882ce5d99199c20a004da97bec48e9b03c02c3b6d95edb77498ce2dd8e090c4ce76349e775af7540b04a6e9303e5b69cd@104.155.31.23:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-testnet-opera-archive-stripprefix.stripprefix.prefixes=/fantom-testnet-archive"
- "traefik.http.services.fantom-testnet-opera-archive.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-testnet-opera-archive.entrypoints=websecure"
- "traefik.http.routers.fantom-testnet-opera-archive.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-testnet-opera-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet-archive`)"
- "traefik.http.routers.fantom-testnet-opera-archive.middlewares=fantom-testnet-opera-archive-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-testnet-opera-archive-stripprefix.stripprefix.prefixes=/fantom-testnet-archive
- traefik.http.services.fantom-testnet-opera-archive.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-archive.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-archive.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet-archive`)}
- ${NO_SSL:+traefik.http.routers.fantom-testnet-opera-archive.rule=PathPrefix(`/fantom-testnet-archive`)}
- traefik.http.routers.fantom-testnet-opera-archive.middlewares=fantom-testnet-opera-archive-stripprefix, ipwhitelist
volumes:
fantom-testnet-opera-archive:
fantom-testnet-opera-archive:
x-upstreams:
- chain: fantom-testnet
method-groups:
enabled:
- debug
- filter
methods:
disabled:
enabled:

View File

@@ -1,55 +1,93 @@
# use at your own risk
services:
fantom-testnet:
build:
context: ./fantom
dockerfile: Dockerfile.opera
dockerfile: opera.Dockerfile
args:
VERSION: "${FANTOM_OPERA_VERSION:-release/txtracing/1.1.3-rc.5}"
REPO: "https://github.com/Fantom-foundation/go-opera.git"
stop_grace_period: 3m
volumes:
- "fantom-testnet-opera-pruned-trace:/datadir"
VERSION: release/txtracing/1.1.3-rc.5
REPO: https://github.com/Fantom-foundation/go-opera.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10037:10037"
- "10037:10037/udp"
- 10196:10196
- 10196:10196/udp
volumes:
- ${FANTOM_TESTNET_OPERA_PRUNED_TRACE_DATA:-fantom-testnet-opera-pruned-trace}:/datadir
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/testnet/testnet-6226-no-history.g
command:
- --datadir=/datadir
- --port=10196
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.migration.mode reformat
- --db.preset pbl-1
- --syncmode snap
- --cache=${FANTOM_TESTNET_OPERA_PRUNED_TRACE_CACHE_MB:-16000}
- --tracenode
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/opera/testnet/testnet-6226-no-history.g"
restart: unless-stopped
command: >
--port=10037
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--ws.origins="*"
--rpc.gascap=600000000
--db.migration.mode reformat
--db.preset pbl-1
--syncmode snap
--cache=${FANTOM_TESTNET_OPERA_PRUNED_TRACE_CACHE_MB:-16000}
--tracenode
--bootnodes=enode://2411cdad2780bf969c0bd6f19b53ac6683710d50f19a7604248d8a6a810d3d6369dffb08535530095c151ecad143393e4fbca2d11f62377fe15b3df4d9883053@34.172.30.235:5050,enode://6f434dc43f826f7c3c817ba7fbe7842aa47c50d1e77a6b57ec51313fd88c7f006240baa105b795712922a05e1b548d413ea6d32d8c1c8feb9ffc206a6c9e37ce@34.55.131.153:5050,enode://64e69ec1f30be48aa8d5f3e6cadf15d06d846d40918f3906e6efbc4a3421f0cc04e3e4f88569b5c90306bbc16ca15df6898ad71b8a73aa36284f1c3076f2956e@35.195.64.211:5050,enode://a76d94105f12d3fb5c31df5a59448d95b723d94543620a02f72ee990e048c43df940f4969ab06d436ef8976c49ec9c2a671c2f5af8d93af911cef63de329a8b8@35.239.100.93:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://544f06ceaddcf508a13326d95518a524e14f4980723c9dc5cb8560635a7faa7f8f91483faed19dacd7d251abf72b4a1b0bcacaced1255deb93414d097221a9bc@35.224.88.189:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://2cd3fcfe9671d81c0e8bb76bc81a430882ce5d99199c20a004da97bec48e9b03c02c3b6d95edb77498ce2dd8e090c4ce76349e775af7540b04a6e9303e5b69cd@104.155.31.23:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-testnet-opera-pruned-trace-stripprefix.stripprefix.prefixes=/fantom-testnet"
- "traefik.http.services.fantom-testnet-opera-pruned-trace.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-testnet-opera-pruned-trace.entrypoints=websecure"
- "traefik.http.routers.fantom-testnet-opera-pruned-trace.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-testnet-opera-pruned-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet`)"
- "traefik.http.routers.fantom-testnet-opera-pruned-trace.middlewares=fantom-testnet-opera-pruned-trace-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-testnet-opera-pruned-trace-stripprefix.stripprefix.prefixes=/fantom-testnet
- traefik.http.services.fantom-testnet-opera-pruned-trace.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-pruned-trace.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-pruned-trace.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-pruned-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet`)}
- ${NO_SSL:+traefik.http.routers.fantom-testnet-opera-pruned-trace.rule=PathPrefix(`/fantom-testnet`)}
- traefik.http.routers.fantom-testnet-opera-pruned-trace.middlewares=fantom-testnet-opera-pruned-trace-stripprefix, ipwhitelist
volumes:
fantom-testnet-opera-pruned-trace:
fantom-testnet-opera-pruned-trace:
x-upstreams:
- chain: fantom-testnet
method-groups:
enabled:
- debug
- filter
- trace
methods:
disabled:
enabled:

View File

@@ -1,55 +1,92 @@
# use at your own risk
services:
fantom-testnet:
build:
context: ./fantom
dockerfile: Dockerfile.opera
dockerfile: opera.Dockerfile
args:
VERSION: "${FANTOM_OPERA_VERSION:-v1.1.3-rc.5}"
REPO: "https://github.com/Fantom-foundation/go-opera.git"
stop_grace_period: 3m
volumes:
- "fantom-testnet-opera-pruned:/datadir"
VERSION: v1.1.3-rc.5
REPO: https://github.com/Fantom-foundation/go-opera.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10846:10846"
- "10846:10846/udp"
- 10196:10196
- 10196:10196/udp
volumes:
- ${FANTOM_TESTNET_OPERA_PRUNED_DATA:-fantom-testnet-opera-pruned}:/datadir
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/testnet/testnet-6226-no-history.g
command:
- --datadir=/datadir
- --port=10196
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.migration.mode reformat
- --db.preset pbl-1
- --syncmode snap
- --cache=${FANTOM_TESTNET_OPERA_PRUNED_CACHE_MB:-16000}
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/opera/testnet/testnet-6226-no-history.g"
restart: unless-stopped
command: >
--port=10846
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
--ws.origins="*"
--rpc.gascap=600000000
--db.migration.mode reformat
--db.preset pbl-1
--syncmode snap
--cache=${FANTOM_TESTNET_OPERA_PRUNED_CACHE_MB:-16000}
--bootnodes=enode://2411cdad2780bf969c0bd6f19b53ac6683710d50f19a7604248d8a6a810d3d6369dffb08535530095c151ecad143393e4fbca2d11f62377fe15b3df4d9883053@34.172.30.235:5050,enode://6f434dc43f826f7c3c817ba7fbe7842aa47c50d1e77a6b57ec51313fd88c7f006240baa105b795712922a05e1b548d413ea6d32d8c1c8feb9ffc206a6c9e37ce@34.55.131.153:5050,enode://64e69ec1f30be48aa8d5f3e6cadf15d06d846d40918f3906e6efbc4a3421f0cc04e3e4f88569b5c90306bbc16ca15df6898ad71b8a73aa36284f1c3076f2956e@35.195.64.211:5050,enode://a76d94105f12d3fb5c31df5a59448d95b723d94543620a02f72ee990e048c43df940f4969ab06d436ef8976c49ec9c2a671c2f5af8d93af911cef63de329a8b8@35.239.100.93:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://544f06ceaddcf508a13326d95518a524e14f4980723c9dc5cb8560635a7faa7f8f91483faed19dacd7d251abf72b4a1b0bcacaced1255deb93414d097221a9bc@35.224.88.189:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://2cd3fcfe9671d81c0e8bb76bc81a430882ce5d99199c20a004da97bec48e9b03c02c3b6d95edb77498ce2dd8e090c4ce76349e775af7540b04a6e9303e5b69cd@104.155.31.23:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-testnet-opera-pruned-stripprefix.stripprefix.prefixes=/fantom-testnet"
- "traefik.http.services.fantom-testnet-opera-pruned.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-testnet-opera-pruned.entrypoints=websecure"
- "traefik.http.routers.fantom-testnet-opera-pruned.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-testnet-opera-pruned.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet`)"
- "traefik.http.routers.fantom-testnet-opera-pruned.middlewares=fantom-testnet-opera-pruned-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-testnet-opera-pruned-stripprefix.stripprefix.prefixes=/fantom-testnet
- traefik.http.services.fantom-testnet-opera-pruned.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-pruned.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-pruned.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-opera-pruned.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet`)}
- ${NO_SSL:+traefik.http.routers.fantom-testnet-opera-pruned.rule=PathPrefix(`/fantom-testnet`)}
- traefik.http.routers.fantom-testnet-opera-pruned.middlewares=fantom-testnet-opera-pruned-stripprefix, ipwhitelist
volumes:
fantom-testnet-opera-pruned:
fantom-testnet-opera-pruned:
x-upstreams:
- chain: fantom-testnet
method-groups:
enabled:
- debug
- filter
methods:
disabled:
enabled:

View File

@@ -1,51 +1,93 @@
# use at your own risk
services:
fantom-mainnet-archive:
build:
context: ./fantom
dockerfile: Dockerfile.sonic
dockerfile: sonic.Dockerfile
args:
VERSION: "${FANTOM_SONIC_VERSION:-v1.2.1-h}"
REPO: "https://github.com/Fantom-foundation/sonic.git"
stop_grace_period: 3m
volumes:
- "fantom-mainnet-sonic-archive:/var/sonic"
VERSION: v1.2.1-h
REPO: https://github.com/Fantom-foundation/sonic.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10335:10335"
- "10335:10335/udp"
- 10335:10335
- 10335:10335/udp
volumes:
- ${FANTOM_MAINNET_SONIC_ARCHIVE_DATA:-fantom-mainnet-sonic-archive}:/var/sonic
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/testnet/testnet-26650-rpc.g
- CACHE_GB=${SONIC_CACHE_GB:-28}
command:
- --datadir=/var/sonic
- --port=10335
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.engine=
- --state.scheme=
- --syncmode=full
- --gcmode=archive
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/mainnet-latest-archive.g"
- "CACHE_GB=${FANTOM_MAINNET_SONIC_CACHE_GB:-28}"
restart: unless-stopped
command: >
--port=10335
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm
--ws.origins="*"
--rpc.gascap=600000000
--bootnodes=enode://94dfec3eb6e50187d22d12f7dd965169bab5a63022934ef0b3b82a819574e0940b5bcb471f62360f1b58cf61a89e634bd14ae7c2e29ce48088890f4a7aff44fe@75.98.207.227:5050,enode://7fb3f43273f4dfeb19c3129c6ed999e14246d2f219ff284d0ef87417cd9514c6d542abc988a654b4a77005ea896c5b4e4ca0d40f97f3bf9ee37be33cc749835f@209.172.40.68:5050,enode://27a80a1db08a40636415d4ff9bb272882b6a6f97a9a5d596006de843f35cbbc679e5252d89d3de05bd74c36cf9f5ce2446dd66cdd5dc7e942a585eb4add61124@37.27.70.18:5050,enode://946fef1538abd165f8bd2ae1c290e7689ff5e209ab6c085eaced9b91e93684b1efe05f79a9a9b460504c450065baaeda5ecb72c03f8adf7e7a559042ce4950da@136.243.252.124:5078,enode://cf762e3a68f8a96676d6383cd3286b85ef7454ef37bb39283efe00d3d573d88f05db3daab7c35a4d3ba9edd9d089e359a25de5beeb24f79f6c1b9e5341958cee@15.235.54.211:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-mainnet-sonic-archive-stripprefix.stripprefix.prefixes=/fantom-mainnet-archive"
- "traefik.http.services.fantom-mainnet-sonic-archive.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-mainnet-sonic-archive.entrypoints=websecure"
- "traefik.http.routers.fantom-mainnet-sonic-archive.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-mainnet-sonic-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet-archive`)"
- "traefik.http.routers.fantom-mainnet-sonic-archive.middlewares=fantom-mainnet-sonic-archive-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-mainnet-sonic-archive-stripprefix.stripprefix.prefixes=/fantom-mainnet-archive
- traefik.http.services.fantom-mainnet-sonic-archive.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-sonic-archive.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-sonic-archive.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-mainnet-sonic-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-mainnet-archive`)}
- ${NO_SSL:+traefik.http.routers.fantom-mainnet-sonic-archive.rule=PathPrefix(`/fantom-mainnet-archive`)}
- traefik.http.routers.fantom-mainnet-sonic-archive.middlewares=fantom-mainnet-sonic-archive-stripprefix, ipwhitelist
volumes:
fantom-mainnet-sonic-archive:
fantom-mainnet-sonic-archive:
x-upstreams:
- chain: fantom
method-groups:
enabled:
- debug
- filter
methods:
disabled:
enabled:

View File

@@ -1,51 +1,93 @@
# use at your own risk
services:
fantom-testnet-archive:
build:
context: ./fantom
dockerfile: Dockerfile.sonic
dockerfile: sonic.Dockerfile
args:
VERSION: "${FANTOM_SONIC_VERSION:-v1.2.1-h}"
REPO: "https://github.com/Fantom-foundation/sonic.git"
stop_grace_period: 3m
volumes:
- "fantom-testnet-sonic-archive:/var/sonic"
VERSION: v1.2.1-h
REPO: https://github.com/Fantom-foundation/sonic.git
user: root
ulimits:
nofile: 1048576 # Max open files (for RPC/WS connections)
sysctls:
# TCP Performance
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
net.core.somaxconn: 32768 # Higher connection queue
# Memory/Connection Management
net.core.netdev_max_backlog: 50000 # Increase network buffer
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
expose:
- "8545"
- 8545
- 8551
ports:
- "10652:10652"
- "10652:10652/udp"
- 10652:10652
- 10652:10652/udp
volumes:
- ${FANTOM_TESTNET_SONIC_ARCHIVE_DATA:-fantom-testnet-sonic-archive}:/var/sonic
- /slowdisk:/slowdisk
- .jwtsecret:/jwtsecret:ro
environment:
- GENESIS=https://download.fantom.network/opera/testnet/testnet-26650-rpc.g
- CACHE_GB=${SONIC_CACHE_GB:-28}
command:
- --datadir=/var/sonic
- --port=10652
- --bind=0.0.0.0
- --nat=extip:${IP}
- --http
- --http.port=8545
- --http.vhosts=*
- --ws
- --ws.port=8545
- --ws.origins=*
- --ws.addr=0.0.0.0
- --http.addr=0.0.0.0
- --maxpeers=50
- --http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm,sfc
- --rpc.gascap=600000000
- --rpc.returndatalimit=10000000
- --rpc.txfeecap=0
- --db.engine=
- --state.scheme=
- --syncmode=full
- --gcmode=archive
networks:
- chains
environment:
- "IP=${IP}"
- "GENESIS=https://download.fantom.network/opera/testnet/testnet-26650-rpc.g"
- "CACHE_GB=${FANTOM_TESTNET_SONIC_CACHE_GB:-28}"
restart: unless-stopped
command: >
--port=10652
--nat=extip:${IP}
--maxpeers=200
--http
--http.addr=0.0.0.0
--http.port=8545
--http.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm
--http.corsdomain="*"
--http.vhosts="*"
--ws
--ws.addr=0.0.0.0
--ws.port=8545
--ws.api=admin,debug,web3,eth,dag,txpool,personal,abft,net,trace,ftm
--ws.origins="*"
--rpc.gascap=600000000
--bootnodes=enode://2411cdad2780bf969c0bd6f19b53ac6683710d50f19a7604248d8a6a810d3d6369dffb08535530095c151ecad143393e4fbca2d11f62377fe15b3df4d9883053@34.172.30.235:5050,enode://6f434dc43f826f7c3c817ba7fbe7842aa47c50d1e77a6b57ec51313fd88c7f006240baa105b795712922a05e1b548d413ea6d32d8c1c8feb9ffc206a6c9e37ce@34.55.131.153:5050,enode://64e69ec1f30be48aa8d5f3e6cadf15d06d846d40918f3906e6efbc4a3421f0cc04e3e4f88569b5c90306bbc16ca15df6898ad71b8a73aa36284f1c3076f2956e@35.195.64.211:5050,enode://a76d94105f12d3fb5c31df5a59448d95b723d94543620a02f72ee990e048c43df940f4969ab06d436ef8976c49ec9c2a671c2f5af8d93af911cef63de329a8b8@35.239.100.93:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://544f06ceaddcf508a13326d95518a524e14f4980723c9dc5cb8560635a7faa7f8f91483faed19dacd7d251abf72b4a1b0bcacaced1255deb93414d097221a9bc@35.224.88.189:5050,enode://baea3b72d091cb361283af4933da32406d707d3bb077a42c77a58cf98e27b546da837e6e9524d8588f414e1886a3b17e036b86fd2d723170db93831a22324252@35.241.219.197:5050,enode://2cd3fcfe9671d81c0e8bb76bc81a430882ce5d99199c20a004da97bec48e9b03c02c3b6d95edb77498ce2dd8e090c4ce76349e775af7540b04a6e9303e5b69cd@104.155.31.23:5050
stop_grace_period: 5m
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.fantom-testnet-sonic-archive-stripprefix.stripprefix.prefixes=/fantom-testnet-archive"
- "traefik.http.services.fantom-testnet-sonic-archive.loadbalancer.server.port=8545"
- "traefik.http.routers.fantom-testnet-sonic-archive.entrypoints=websecure"
- "traefik.http.routers.fantom-testnet-sonic-archive.tls.certresolver=myresolver"
- "traefik.http.routers.fantom-testnet-sonic-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet-archive`)"
- "traefik.http.routers.fantom-testnet-sonic-archive.middlewares=fantom-testnet-sonic-archive-stripprefix, ipwhitelist"
- traefik.enable=true
- traefik.http.middlewares.fantom-testnet-sonic-archive-stripprefix.stripprefix.prefixes=/fantom-testnet-archive
- traefik.http.services.fantom-testnet-sonic-archive.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.fantom-testnet-sonic-archive.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-sonic-archive.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.fantom-testnet-sonic-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/fantom-testnet-archive`)}
- ${NO_SSL:+traefik.http.routers.fantom-testnet-sonic-archive.rule=PathPrefix(`/fantom-testnet-archive`)}
- traefik.http.routers.fantom-testnet-sonic-archive.middlewares=fantom-testnet-sonic-archive-stripprefix, ipwhitelist
volumes:
fantom-testnet-sonic-archive:
fantom-testnet-sonic-archive:
x-upstreams:
- chain: fantom-testnet
method-groups:
enabled:
- debug
- filter
methods:
disabled:
enabled: