169 lines
5.3 KiB
YAML
169 lines
5.3 KiB
YAML
services:
|
|
op-geth-minato:
|
|
image: us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth:v1.101411.2
|
|
restart: unless-stopped
|
|
entrypoint: >
|
|
/bin/sh -c "
|
|
if [ ! -d /data/optimism/geth/chaindata ]; then
|
|
cp /config/minato-genesis.json /data/optimism/genesis.json &&
|
|
geth init --state.scheme=hash --datadir=/data/optimism /data/optimism/genesis.json
|
|
fi &&
|
|
geth
|
|
--datadir=/data/optimism
|
|
--http --http.corsdomain=* --http.vhosts=* --http.addr=0.0.0.0 --http.api=web3,debug,eth,txpool,net,engine
|
|
--ws --ws.addr=0.0.0.0 --ws.port=8546 --ws.origins=* --ws.api=debug,eth,txpool,net,engine
|
|
--syncmode=snap
|
|
--maxpeers=100
|
|
--authrpc.vhosts=*
|
|
--nat=extip:###IP###
|
|
--authrpc.addr=0.0.0.0 --authrpc.port=8551 --authrpc.jwtsecret=/etc/optimism/jwt.txt
|
|
--metrics --metrics.addr=0.0.0.0 --metrics.expensive --metrics.port=6060
|
|
--metrics.influxdb --metrics.influxdb.endpoint "http://influxdb:8086"
|
|
--metrics.influxdb.username "admin" --metrics.influxdb.password "Overdrawn-Doorframe4-Lend"
|
|
--rollup.disabletxpoolgossip=false
|
|
--rpc.allow-unprotected-txs=true
|
|
--override.fjord=1730106000
|
|
--override.granite=1730106000
|
|
--override.holocene=1734685200
|
|
--db.engine=pebble
|
|
--state.scheme=hash
|
|
--port=30303
|
|
--bootnodes=enode://6526c348274c54e7b4184014741897eb25e12ca388f588b0265bb2246caeea87ed5fcb2d55b7b08a90cd271a53bc76decb6d1ec37f219dbe4cd3ed53a888118b@peering-02.prd.hypersonicl2.com:30303,enode://34f172c255b11f64828d73c90a60395691e89782639423d434385594dd38b434ddffb78ad411da6fd37cbda6d0f93e17ceae399ac4f2594b0d54eb8c83c27de9@peering-01.prd.hypersonicl2.com:30303"
|
|
ports:
|
|
- "8551:8551"
|
|
- "6060:6060"
|
|
- "8545:8545"
|
|
- "8546:8546"
|
|
- "30303:30303"
|
|
volumes:
|
|
- op-geth-storage:/data/optimism
|
|
- ./minato-genesis.json:/config/minato-genesis.json
|
|
- ./jwt.txt:/etc/optimism/jwt.txt
|
|
- op-secrets:/etc/minato/secrets
|
|
networks:
|
|
- minato
|
|
logging:
|
|
driver: "json-file"
|
|
options:
|
|
max-file: 2
|
|
max-size: 5m
|
|
|
|
op-node-minato:
|
|
image: us-docker.pkg.dev/oplabs-tools-artifacts/images/op-node:v1.10.0
|
|
restart: unless-stopped
|
|
command: >
|
|
op-node
|
|
--l1="https://ethereum-sepolia-rpc.publicnode.com"
|
|
--l2="http://op-geth-minato:8551"
|
|
--rpc.addr="127.0.0.1"
|
|
--rpc.port=9545
|
|
--l2.jwt-secret="/etc/optimism/jwt.txt"
|
|
--l1.trustrpc=true
|
|
--l1.beacon="https://ethereum-sepolia-beacon-api.publicnode.com"
|
|
--syncmode="execution-layer"
|
|
--l1.rpckind="standard"
|
|
--p2p.static="/dns4/peering-01.prd.hypersonicl2.com/tcp/9222/p2p/16Uiu2HAm36ufaFmS3tjSjkUnwSJmQN8W8fZ8yXiu2AYL2o11EgcK,/dns4/peering-02.prd.hypersonicl2.com/tcp/9222/p2p/16Uiu2HAmPkRbG8kkhJ3JWmrqeiMvy1hWXFSz4s4rncVe8YiCJHmx"
|
|
--p2p.priv.path="/data/optimism/p2p.key"
|
|
--p2p.discovery.path="/data/optimism/p2p.db"
|
|
--p2p.peerstore.path="/data/optimism/p2p-peerstore.db"
|
|
--metrics.enabled=true
|
|
--p2p.ban.peers=false
|
|
--p2p.advertise.ip="###IP###"
|
|
--metrics.port=7310
|
|
--override.fjord=1730106000
|
|
--override.granite=1730106000
|
|
--override.holocene=1734685200
|
|
--rollup.config="/config/minato-rollup.json"
|
|
ports:
|
|
- "9545:9545"
|
|
- "7310:7310"
|
|
- "9222:9222"
|
|
volumes:
|
|
- op-node-storage:/data/optimism
|
|
- ./minato-rollup.json:/config/minato-rollup.json
|
|
- ./jwt.txt:/etc/optimism/jwt.txt
|
|
- op-secrets:/etc/minato/secrets
|
|
networks:
|
|
- minato
|
|
logging:
|
|
driver: "json-file"
|
|
options:
|
|
max-file: 2
|
|
max-size: 5m
|
|
|
|
#prometheus:
|
|
# container_name: prometheus # http://prometheus:9090
|
|
# image: prom/prometheus:latest
|
|
# restart: unless-stopped
|
|
# command: --config.file=/etc/prometheus/prometheus.yml
|
|
# #ports:
|
|
# # - "9090:9090"
|
|
# volumes:
|
|
# - ./prometheus.yml:/etc/prometheus/prometheus.yml
|
|
# - prometheus-data:/prometheus
|
|
# networks:
|
|
# - minato
|
|
# logging:
|
|
# driver: "json-file"
|
|
# options:
|
|
# max-file: 5
|
|
# max-size: 10m
|
|
|
|
influxdb:
|
|
image: influxdb:1.8-alpine
|
|
container_name: influxdb # http://influxdb:8086
|
|
restart: unless-stopped
|
|
environment:
|
|
- INFLUXDB_DB=geth
|
|
- INFLUXDB_ADMIN_USER=admin
|
|
- INFLUXDB_ADMIN_PASSWORD=Overdrawn-Doorframe4-Lend
|
|
- TZ=Europe/Moscow
|
|
#ports:
|
|
# - '8086:8086'
|
|
volumes:
|
|
- influxdb_data:/var/lib/influxdb
|
|
networks:
|
|
- minato
|
|
logging:
|
|
driver: "json-file"
|
|
options:
|
|
max-file: 5
|
|
max-size: 10m
|
|
|
|
grafana: #dash 13877
|
|
image: grafana/grafana:latest
|
|
container_name: grafana
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- influxdb
|
|
environment:
|
|
- GF_SECURITY_ADMIN_USER=admin
|
|
- GF_SECURITY_ADMIN_PASSWORD=Passing2-Edgy-Vexingly
|
|
- TZ=Europe/Moscow
|
|
ports:
|
|
- '3000:3000'
|
|
volumes:
|
|
- grafana_data:/var/lib/grafana
|
|
- grafana_conf:/etc/grafana
|
|
networks:
|
|
- minato
|
|
logging:
|
|
driver: "json-file"
|
|
options:
|
|
max-file: 5
|
|
max-size: 10m
|
|
|
|
|
|
volumes:
|
|
#prometheus-data:
|
|
influxdb_data:
|
|
op-geth-storage:
|
|
op-node-storage:
|
|
op-secrets:
|
|
grafana_data:
|
|
grafana_conf:
|
|
|
|
networks:
|
|
minato:
|
|
driver: bridge
|