get rid of nginx

This commit is contained in:
goldsquid
2025-06-22 14:47:42 +07:00
parent b6b09dfc0c
commit 04db729cb7
10 changed files with 138 additions and 242 deletions

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
avalanche-fuji-archive-client: avalanche-fuji-archive:
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji} image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -50,7 +50,6 @@ services:
- 10046:10046/udp - 10046:10046/udp
expose: expose:
- 9650 - 9650
- 9650
entrypoint: [/avalanchego/build/avalanchego] entrypoint: [/avalanchego/build/avalanchego]
command: command:
- --chain-config-dir=/config/archive - --chain-config-dir=/config/archive
@@ -71,35 +70,26 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
avalanche-fuji-archive:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: avalanche-fuji-archive-client
RPC_PATH: /ext/bc/C/rpc
RPC_PORT: 9650
WS_PATH: /ext/bc/C/ws
WS_PORT: 9650
restart: unless-stopped
depends_on:
- avalanche-fuji-archive-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.avalanche-fuji-go-archive-leveldb-set-path.replacepath.path=/ext/bc/C/rpc
- traefik.http.middlewares.avalanche-fuji-go-archive-leveldb-stripprefix.stripprefix.prefixes=/avalanche-fuji-archive - traefik.http.middlewares.avalanche-fuji-go-archive-leveldb-stripprefix.stripprefix.prefixes=/avalanche-fuji-archive
- traefik.http.services.avalanche-fuji-go-archive-leveldb.loadbalancer.server.port=80 - traefik.http.services.avalanche-fuji-go-archive-leveldb.loadbalancer.server.port=9650
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-archive-leveldb.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-archive-leveldb.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-archive-leveldb.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-archive-leveldb.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-archive-leveldb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-fuji-archive`) || Path(`/avalanche-fuji-archive/`))} - ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-archive-leveldb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-fuji-archive`) || Path(`/avalanche-fuji-archive/`))}
- ${NO_SSL:+traefik.http.routers.avalanche-fuji-go-archive-leveldb.rule=Path(`/avalanche-fuji-archive`) || Path(`/avalanche-fuji-archive/`)} - ${NO_SSL:+traefik.http.routers.avalanche-fuji-go-archive-leveldb.rule=Path(`/avalanche-fuji-archive`) || Path(`/avalanche-fuji-archive/`)}
- traefik.http.routers.avalanche-fuji-go-archive-leveldb.middlewares=avalanche-fuji-go-archive-leveldb-stripprefix, ipallowlist - traefik.http.routers.avalanche-fuji-go-archive-leveldb.middlewares=avalanche-fuji-go-archive-leveldb-stripprefix, avalanche-fuji-go-archive-leveldb-set-path, ipallowlist
- traefik.http.routers.avalanche-fuji-go-archive-leveldb.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.avalanche-fuji-go-archive-leveldb-ws.priority=100 # answers GET requests first
- traefik.http.middlewares.avalanche-fuji-go-archive-leveldb-set-ws-path.replacepath.path=/ext/bc/C/ws
- traefik.http.services.avalanche-fuji-go-archive-leveldb-ws.loadbalancer.server.port=9650
- traefik.http.routers.avalanche-fuji-go-archive-leveldb-ws.service=avalanche-fuji-go-archive-leveldb-ws
- traefik.http.routers.avalanche-fuji-go-archive-leveldb.service=avalanche-fuji-go-archive-leveldb
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-archive-leveldb-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-archive-leveldb-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-archive-leveldb-ws.rule=Host(`$DOMAIN`) && (Path(`/avalanche-fuji-archive`) || Path(`/avalanche-fuji-archive/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.avalanche-fuji-go-archive-leveldb-ws.rule=(Path(`/avalanche-fuji-archive`) || Path(`/avalanche-fuji-archive/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.avalanche-fuji-go-archive-leveldb-ws.middlewares=avalanche-fuji-go-archive-leveldb-stripprefix, avalanche-fuji-go-archive-leveldb-set-ws-path, ipallowlist
volumes: volumes:
avalanche-fuji-go-archive-leveldb: avalanche-fuji-go-archive-leveldb:

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
avalanche-fuji-client: avalanche-fuji:
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji} image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -50,7 +50,6 @@ services:
- 12059:12059/udp - 12059:12059/udp
expose: expose:
- 9650 - 9650
- 9650
entrypoint: [/avalanchego/build/avalanchego] entrypoint: [/avalanchego/build/avalanchego]
command: command:
- --chain-config-dir=/config/pruned - --chain-config-dir=/config/pruned
@@ -71,35 +70,26 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
avalanche-fuji:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: avalanche-fuji-client
RPC_PATH: /ext/bc/C/rpc
RPC_PORT: 9650
WS_PATH: /ext/bc/C/ws
WS_PORT: 9650
restart: unless-stopped
depends_on:
- avalanche-fuji-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.avalanche-fuji-go-pruned-leveldb-set-path.replacepath.path=/ext/bc/C/rpc
- traefik.http.middlewares.avalanche-fuji-go-pruned-leveldb-stripprefix.stripprefix.prefixes=/avalanche-fuji - traefik.http.middlewares.avalanche-fuji-go-pruned-leveldb-stripprefix.stripprefix.prefixes=/avalanche-fuji
- traefik.http.services.avalanche-fuji-go-pruned-leveldb.loadbalancer.server.port=80 - traefik.http.services.avalanche-fuji-go-pruned-leveldb.loadbalancer.server.port=9650
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-leveldb.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-leveldb.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-leveldb.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-leveldb.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-leveldb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`))} - ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-leveldb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`))}
- ${NO_SSL:+traefik.http.routers.avalanche-fuji-go-pruned-leveldb.rule=Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`)} - ${NO_SSL:+traefik.http.routers.avalanche-fuji-go-pruned-leveldb.rule=Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`)}
- traefik.http.routers.avalanche-fuji-go-pruned-leveldb.middlewares=avalanche-fuji-go-pruned-leveldb-stripprefix, ipallowlist - traefik.http.routers.avalanche-fuji-go-pruned-leveldb.middlewares=avalanche-fuji-go-pruned-leveldb-stripprefix, avalanche-fuji-go-pruned-leveldb-set-path, ipallowlist
- traefik.http.routers.avalanche-fuji-go-pruned-leveldb.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.avalanche-fuji-go-pruned-leveldb-ws.priority=100 # answers GET requests first
- traefik.http.middlewares.avalanche-fuji-go-pruned-leveldb-set-ws-path.replacepath.path=/ext/bc/C/ws
- traefik.http.services.avalanche-fuji-go-pruned-leveldb-ws.loadbalancer.server.port=9650
- traefik.http.routers.avalanche-fuji-go-pruned-leveldb-ws.service=avalanche-fuji-go-pruned-leveldb-ws
- traefik.http.routers.avalanche-fuji-go-pruned-leveldb.service=avalanche-fuji-go-pruned-leveldb
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-leveldb-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-leveldb-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-leveldb-ws.rule=Host(`$DOMAIN`) && (Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.avalanche-fuji-go-pruned-leveldb-ws.rule=(Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.avalanche-fuji-go-pruned-leveldb-ws.middlewares=avalanche-fuji-go-pruned-leveldb-stripprefix, avalanche-fuji-go-pruned-leveldb-set-ws-path, ipallowlist
volumes: volumes:
avalanche-fuji-go-pruned-leveldb: avalanche-fuji-go-pruned-leveldb:

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
avalanche-fuji-client: avalanche-fuji:
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji} image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -50,7 +50,6 @@ services:
- 10350:10350/udp - 10350:10350/udp
expose: expose:
- 9650 - 9650
- 9650
entrypoint: [/avalanchego/build/avalanchego] entrypoint: [/avalanchego/build/avalanchego]
command: command:
- --chain-config-dir=/config/pruned - --chain-config-dir=/config/pruned
@@ -71,35 +70,26 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
avalanche-fuji:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: avalanche-fuji-client
RPC_PATH: /ext/bc/C/rpc
RPC_PORT: 9650
WS_PATH: /ext/bc/C/ws
WS_PORT: 9650
restart: unless-stopped
depends_on:
- avalanche-fuji-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.avalanche-fuji-go-pruned-pebbledb-set-path.replacepath.path=/ext/bc/C/rpc
- traefik.http.middlewares.avalanche-fuji-go-pruned-pebbledb-stripprefix.stripprefix.prefixes=/avalanche-fuji - traefik.http.middlewares.avalanche-fuji-go-pruned-pebbledb-stripprefix.stripprefix.prefixes=/avalanche-fuji
- traefik.http.services.avalanche-fuji-go-pruned-pebbledb.loadbalancer.server.port=80 - traefik.http.services.avalanche-fuji-go-pruned-pebbledb.loadbalancer.server.port=9650
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`))} - ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`))}
- ${NO_SSL:+traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.rule=Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`)} - ${NO_SSL:+traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.rule=Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`)}
- traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.middlewares=avalanche-fuji-go-pruned-pebbledb-stripprefix, ipallowlist - traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.middlewares=avalanche-fuji-go-pruned-pebbledb-stripprefix, avalanche-fuji-go-pruned-pebbledb-set-path, ipallowlist
- traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.avalanche-fuji-go-pruned-pebbledb-ws.priority=100 # answers GET requests first
- traefik.http.middlewares.avalanche-fuji-go-pruned-pebbledb-set-ws-path.replacepath.path=/ext/bc/C/ws
- traefik.http.services.avalanche-fuji-go-pruned-pebbledb-ws.loadbalancer.server.port=9650
- traefik.http.routers.avalanche-fuji-go-pruned-pebbledb-ws.service=avalanche-fuji-go-pruned-pebbledb-ws
- traefik.http.routers.avalanche-fuji-go-pruned-pebbledb.service=avalanche-fuji-go-pruned-pebbledb
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-pebbledb-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-pebbledb-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-fuji-go-pruned-pebbledb-ws.rule=Host(`$DOMAIN`) && (Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.avalanche-fuji-go-pruned-pebbledb-ws.rule=(Path(`/avalanche-fuji`) || Path(`/avalanche-fuji/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.avalanche-fuji-go-pruned-pebbledb-ws.middlewares=avalanche-fuji-go-pruned-pebbledb-stripprefix, avalanche-fuji-go-pruned-pebbledb-set-ws-path, ipallowlist
volumes: volumes:
avalanche-fuji-go-pruned-pebbledb: avalanche-fuji-go-pruned-pebbledb:

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
avalanche-mainnet-archive-client: avalanche-mainnet-archive:
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0} image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -50,7 +50,6 @@ services:
- 12934:12934/udp - 12934:12934/udp
expose: expose:
- 9650 - 9650
- 9650
entrypoint: [/avalanchego/build/avalanchego] entrypoint: [/avalanchego/build/avalanchego]
command: command:
- --chain-config-dir=/config/archive - --chain-config-dir=/config/archive
@@ -71,35 +70,26 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
avalanche-mainnet-archive:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: avalanche-mainnet-archive-client
RPC_PATH: /ext/bc/C/rpc
RPC_PORT: 9650
WS_PATH: /ext/bc/C/ws
WS_PORT: 9650
restart: unless-stopped
depends_on:
- avalanche-mainnet-archive-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.avalanche-mainnet-go-archive-leveldb-set-path.replacepath.path=/ext/bc/C/rpc
- traefik.http.middlewares.avalanche-mainnet-go-archive-leveldb-stripprefix.stripprefix.prefixes=/avalanche-mainnet-archive - traefik.http.middlewares.avalanche-mainnet-go-archive-leveldb-stripprefix.stripprefix.prefixes=/avalanche-mainnet-archive
- traefik.http.services.avalanche-mainnet-go-archive-leveldb.loadbalancer.server.port=80 - traefik.http.services.avalanche-mainnet-go-archive-leveldb.loadbalancer.server.port=9650
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-archive-leveldb.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-archive-leveldb.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-archive-leveldb.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-archive-leveldb.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-archive-leveldb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-mainnet-archive`) || Path(`/avalanche-mainnet-archive/`))} - ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-archive-leveldb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-mainnet-archive`) || Path(`/avalanche-mainnet-archive/`))}
- ${NO_SSL:+traefik.http.routers.avalanche-mainnet-go-archive-leveldb.rule=Path(`/avalanche-mainnet-archive`) || Path(`/avalanche-mainnet-archive/`)} - ${NO_SSL:+traefik.http.routers.avalanche-mainnet-go-archive-leveldb.rule=Path(`/avalanche-mainnet-archive`) || Path(`/avalanche-mainnet-archive/`)}
- traefik.http.routers.avalanche-mainnet-go-archive-leveldb.middlewares=avalanche-mainnet-go-archive-leveldb-stripprefix, ipallowlist - traefik.http.routers.avalanche-mainnet-go-archive-leveldb.middlewares=avalanche-mainnet-go-archive-leveldb-stripprefix, avalanche-mainnet-go-archive-leveldb-set-path, ipallowlist
- traefik.http.routers.avalanche-mainnet-go-archive-leveldb.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.avalanche-mainnet-go-archive-leveldb-ws.priority=100 # answers GET requests first
- traefik.http.middlewares.avalanche-mainnet-go-archive-leveldb-set-ws-path.replacepath.path=/ext/bc/C/ws
- traefik.http.services.avalanche-mainnet-go-archive-leveldb-ws.loadbalancer.server.port=9650
- traefik.http.routers.avalanche-mainnet-go-archive-leveldb-ws.service=avalanche-mainnet-go-archive-leveldb-ws
- traefik.http.routers.avalanche-mainnet-go-archive-leveldb.service=avalanche-mainnet-go-archive-leveldb
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-archive-leveldb-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-archive-leveldb-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-archive-leveldb-ws.rule=Host(`$DOMAIN`) && (Path(`/avalanche-mainnet-archive`) || Path(`/avalanche-mainnet-archive/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.avalanche-mainnet-go-archive-leveldb-ws.rule=(Path(`/avalanche-mainnet-archive`) || Path(`/avalanche-mainnet-archive/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.avalanche-mainnet-go-archive-leveldb-ws.middlewares=avalanche-mainnet-go-archive-leveldb-stripprefix, avalanche-mainnet-go-archive-leveldb-set-ws-path, ipallowlist
volumes: volumes:
avalanche-mainnet-go-archive-leveldb: avalanche-mainnet-go-archive-leveldb:

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
avalanche-mainnet-client: avalanche-mainnet:
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0} image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -50,7 +50,6 @@ services:
- 12757:12757/udp - 12757:12757/udp
expose: expose:
- 9650 - 9650
- 9650
entrypoint: [/avalanchego/build/avalanchego] entrypoint: [/avalanchego/build/avalanchego]
command: command:
- --chain-config-dir=/config/pruned - --chain-config-dir=/config/pruned
@@ -71,35 +70,26 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
avalanche-mainnet:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: avalanche-mainnet-client
RPC_PATH: /ext/bc/C/rpc
RPC_PORT: 9650
WS_PATH: /ext/bc/C/ws
WS_PORT: 9650
restart: unless-stopped
depends_on:
- avalanche-mainnet-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.avalanche-mainnet-go-pruned-leveldb-set-path.replacepath.path=/ext/bc/C/rpc
- traefik.http.middlewares.avalanche-mainnet-go-pruned-leveldb-stripprefix.stripprefix.prefixes=/avalanche-mainnet - traefik.http.middlewares.avalanche-mainnet-go-pruned-leveldb-stripprefix.stripprefix.prefixes=/avalanche-mainnet
- traefik.http.services.avalanche-mainnet-go-pruned-leveldb.loadbalancer.server.port=80 - traefik.http.services.avalanche-mainnet-go-pruned-leveldb.loadbalancer.server.port=9650
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`))} - ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`))}
- ${NO_SSL:+traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.rule=Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`)} - ${NO_SSL:+traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.rule=Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`)}
- traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.middlewares=avalanche-mainnet-go-pruned-leveldb-stripprefix, ipallowlist - traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.middlewares=avalanche-mainnet-go-pruned-leveldb-stripprefix, avalanche-mainnet-go-pruned-leveldb-set-path, ipallowlist
- traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.avalanche-mainnet-go-pruned-leveldb-ws.priority=100 # answers GET requests first
- traefik.http.middlewares.avalanche-mainnet-go-pruned-leveldb-set-ws-path.replacepath.path=/ext/bc/C/ws
- traefik.http.services.avalanche-mainnet-go-pruned-leveldb-ws.loadbalancer.server.port=9650
- traefik.http.routers.avalanche-mainnet-go-pruned-leveldb-ws.service=avalanche-mainnet-go-pruned-leveldb-ws
- traefik.http.routers.avalanche-mainnet-go-pruned-leveldb.service=avalanche-mainnet-go-pruned-leveldb
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-leveldb-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-leveldb-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-leveldb-ws.rule=Host(`$DOMAIN`) && (Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.avalanche-mainnet-go-pruned-leveldb-ws.rule=(Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.avalanche-mainnet-go-pruned-leveldb-ws.middlewares=avalanche-mainnet-go-pruned-leveldb-stripprefix, avalanche-mainnet-go-pruned-leveldb-set-ws-path, ipallowlist
volumes: volumes:
avalanche-mainnet-go-pruned-leveldb: avalanche-mainnet-go-pruned-leveldb:

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
avalanche-mainnet-client: avalanche-mainnet:
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0} image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -50,7 +50,6 @@ services:
- 11929:11929/udp - 11929:11929/udp
expose: expose:
- 9650 - 9650
- 9650
entrypoint: [/avalanchego/build/avalanchego] entrypoint: [/avalanchego/build/avalanchego]
command: command:
- --chain-config-dir=/config/pruned - --chain-config-dir=/config/pruned
@@ -71,35 +70,26 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
avalanche-mainnet:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: avalanche-mainnet-client
RPC_PATH: /ext/bc/C/rpc
RPC_PORT: 9650
WS_PATH: /ext/bc/C/ws
WS_PORT: 9650
restart: unless-stopped
depends_on:
- avalanche-mainnet-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.avalanche-mainnet-go-pruned-pebbledb-set-path.replacepath.path=/ext/bc/C/rpc
- traefik.http.middlewares.avalanche-mainnet-go-pruned-pebbledb-stripprefix.stripprefix.prefixes=/avalanche-mainnet - traefik.http.middlewares.avalanche-mainnet-go-pruned-pebbledb-stripprefix.stripprefix.prefixes=/avalanche-mainnet
- traefik.http.services.avalanche-mainnet-go-pruned-pebbledb.loadbalancer.server.port=80 - traefik.http.services.avalanche-mainnet-go-pruned-pebbledb.loadbalancer.server.port=9650
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`))} - ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.rule=Host(`$DOMAIN`) && (Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`))}
- ${NO_SSL:+traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.rule=Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`)} - ${NO_SSL:+traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.rule=Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`)}
- traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.middlewares=avalanche-mainnet-go-pruned-pebbledb-stripprefix, ipallowlist - traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.middlewares=avalanche-mainnet-go-pruned-pebbledb-stripprefix, avalanche-mainnet-go-pruned-pebbledb-set-path, ipallowlist
- traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb-ws.priority=100 # answers GET requests first
- traefik.http.middlewares.avalanche-mainnet-go-pruned-pebbledb-set-ws-path.replacepath.path=/ext/bc/C/ws
- traefik.http.services.avalanche-mainnet-go-pruned-pebbledb-ws.loadbalancer.server.port=9650
- traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb-ws.service=avalanche-mainnet-go-pruned-pebbledb-ws
- traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb.service=avalanche-mainnet-go-pruned-pebbledb
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb-ws.rule=Host(`$DOMAIN`) && (Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb-ws.rule=(Path(`/avalanche-mainnet`) || Path(`/avalanche-mainnet/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.avalanche-mainnet-go-pruned-pebbledb-ws.middlewares=avalanche-mainnet-go-pruned-pebbledb-stripprefix, avalanche-mainnet-go-pruned-pebbledb-set-ws-path, ipallowlist
volumes: volumes:
avalanche-mainnet-go-pruned-pebbledb: avalanche-mainnet-go-pruned-pebbledb:

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
viction-mainnet-node-archive-client: viction-mainnet-node-archive:
image: ${VICTION_NODE_IMAGE:-buildonviction/node}:${VICTION_MAINNET_NODE_VERSION:-v2.4.7} image: ${VICTION_NODE_IMAGE:-buildonviction/node}:${VICTION_MAINNET_NODE_VERSION:-v2.4.7}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -67,35 +67,24 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
viction-mainnet-node-archive:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: viction-mainnet-node-archive-client
RPC_PATH: ''
RPC_PORT: 8545
WS_PATH: ''
WS_PORT: 8546
restart: unless-stopped
depends_on:
- viction-mainnet-node-archive-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.viction-mainnet-node-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/viction-mainnet-node-archive - traefik.http.middlewares.viction-mainnet-node-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/viction-mainnet-node-archive
- traefik.http.services.viction-mainnet-node-archive-leveldb-hash.loadbalancer.server.port=80 - traefik.http.services.viction-mainnet-node-archive-leveldb-hash.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.rule=Host(`$DOMAIN`) && (Path(`/viction-mainnet-node-archive`) || Path(`/viction-mainnet-node-archive/`))} - ${NO_SSL:-traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.rule=Host(`$DOMAIN`) && (Path(`/viction-mainnet-node-archive`) || Path(`/viction-mainnet-node-archive/`))}
- ${NO_SSL:+traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.rule=Path(`/viction-mainnet-node-archive`) || Path(`/viction-mainnet-node-archive/`)} - ${NO_SSL:+traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.rule=Path(`/viction-mainnet-node-archive`) || Path(`/viction-mainnet-node-archive/`)}
- traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.middlewares=viction-mainnet-node-archive-leveldb-hash-stripprefix, ipallowlist - traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.middlewares=viction-mainnet-node-archive-leveldb-hash-stripprefix, ipallowlist
- traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.viction-mainnet-node-archive-leveldb-hash-ws.priority=100 # answers GET requests first
- traefik.http.services.viction-mainnet-node-archive-leveldb-hash-ws.loadbalancer.server.port=8546
- traefik.http.routers.viction-mainnet-node-archive-leveldb-hash-ws.service=viction-mainnet-node-archive-leveldb-hash-ws
- traefik.http.routers.viction-mainnet-node-archive-leveldb-hash.service=viction-mainnet-node-archive-leveldb-hash
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-archive-leveldb-hash-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-archive-leveldb-hash-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-archive-leveldb-hash-ws.rule=Host(`$DOMAIN`) && (Path(`/viction-mainnet-node-archive`) || Path(`/viction-mainnet-node-archive/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.viction-mainnet-node-archive-leveldb-hash-ws.rule=(Path(`/viction-mainnet-node-archive`) || Path(`/viction-mainnet-node-archive/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.viction-mainnet-node-archive-leveldb-hash-ws.middlewares=viction-mainnet-node-archive-leveldb-hash-stripprefix, ipallowlist
volumes: volumes:
viction-mainnet-node-archive-leveldb-hash: viction-mainnet-node-archive-leveldb-hash:

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
viction-mainnet-node-client: viction-mainnet-node:
image: ${VICTION_NODE_IMAGE:-buildonviction/node}:${VICTION_MAINNET_NODE_VERSION:-v2.4.7} image: ${VICTION_NODE_IMAGE:-buildonviction/node}:${VICTION_MAINNET_NODE_VERSION:-v2.4.7}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -67,35 +67,24 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
viction-mainnet-node:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: viction-mainnet-node-client
RPC_PATH: ''
RPC_PORT: 8545
WS_PATH: ''
WS_PORT: 8546
restart: unless-stopped
depends_on:
- viction-mainnet-node-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.viction-mainnet-node-pruned-leveldb-hash-stripprefix.stripprefix.prefixes=/viction-mainnet-node - traefik.http.middlewares.viction-mainnet-node-pruned-leveldb-hash-stripprefix.stripprefix.prefixes=/viction-mainnet-node
- traefik.http.services.viction-mainnet-node-pruned-leveldb-hash.loadbalancer.server.port=80 - traefik.http.services.viction-mainnet-node-pruned-leveldb-hash.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.rule=Host(`$DOMAIN`) && (Path(`/viction-mainnet-node`) || Path(`/viction-mainnet-node/`))} - ${NO_SSL:-traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.rule=Host(`$DOMAIN`) && (Path(`/viction-mainnet-node`) || Path(`/viction-mainnet-node/`))}
- ${NO_SSL:+traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.rule=Path(`/viction-mainnet-node`) || Path(`/viction-mainnet-node/`)} - ${NO_SSL:+traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.rule=Path(`/viction-mainnet-node`) || Path(`/viction-mainnet-node/`)}
- traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.middlewares=viction-mainnet-node-pruned-leveldb-hash-stripprefix, ipallowlist - traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.middlewares=viction-mainnet-node-pruned-leveldb-hash-stripprefix, ipallowlist
- traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash-ws.priority=100 # answers GET requests first
- traefik.http.services.viction-mainnet-node-pruned-leveldb-hash-ws.loadbalancer.server.port=8546
- traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash-ws.service=viction-mainnet-node-pruned-leveldb-hash-ws
- traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash.service=viction-mainnet-node-pruned-leveldb-hash
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash-ws.rule=Host(`$DOMAIN`) && (Path(`/viction-mainnet-node`) || Path(`/viction-mainnet-node/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash-ws.rule=(Path(`/viction-mainnet-node`) || Path(`/viction-mainnet-node/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.viction-mainnet-node-pruned-leveldb-hash-ws.middlewares=viction-mainnet-node-pruned-leveldb-hash-stripprefix, ipallowlist
volumes: volumes:
viction-mainnet-node-pruned-leveldb-hash: viction-mainnet-node-pruned-leveldb-hash:

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
viction-testnet-node-archive-client: viction-testnet-node-archive:
image: ${VICTION_NODE_IMAGE:-buildonviction/node}:${VICTION_TESTNET_NODE_VERSION:-v2.4.7} image: ${VICTION_NODE_IMAGE:-buildonviction/node}:${VICTION_TESTNET_NODE_VERSION:-v2.4.7}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -67,35 +67,24 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
viction-testnet-node-archive:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: viction-testnet-node-archive-client
RPC_PATH: ''
RPC_PORT: 8545
WS_PATH: ''
WS_PORT: 8546
restart: unless-stopped
depends_on:
- viction-testnet-node-archive-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.viction-testnet-node-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/viction-testnet-node-archive - traefik.http.middlewares.viction-testnet-node-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/viction-testnet-node-archive
- traefik.http.services.viction-testnet-node-archive-leveldb-hash.loadbalancer.server.port=80 - traefik.http.services.viction-testnet-node-archive-leveldb-hash.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-archive-leveldb-hash.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.viction-testnet-node-archive-leveldb-hash.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-archive-leveldb-hash.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.viction-testnet-node-archive-leveldb-hash.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-archive-leveldb-hash.rule=Host(`$DOMAIN`) && (Path(`/viction-testnet-node-archive`) || Path(`/viction-testnet-node-archive/`))} - ${NO_SSL:-traefik.http.routers.viction-testnet-node-archive-leveldb-hash.rule=Host(`$DOMAIN`) && (Path(`/viction-testnet-node-archive`) || Path(`/viction-testnet-node-archive/`))}
- ${NO_SSL:+traefik.http.routers.viction-testnet-node-archive-leveldb-hash.rule=Path(`/viction-testnet-node-archive`) || Path(`/viction-testnet-node-archive/`)} - ${NO_SSL:+traefik.http.routers.viction-testnet-node-archive-leveldb-hash.rule=Path(`/viction-testnet-node-archive`) || Path(`/viction-testnet-node-archive/`)}
- traefik.http.routers.viction-testnet-node-archive-leveldb-hash.middlewares=viction-testnet-node-archive-leveldb-hash-stripprefix, ipallowlist - traefik.http.routers.viction-testnet-node-archive-leveldb-hash.middlewares=viction-testnet-node-archive-leveldb-hash-stripprefix, ipallowlist
- traefik.http.routers.viction-testnet-node-archive-leveldb-hash.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.viction-testnet-node-archive-leveldb-hash-ws.priority=100 # answers GET requests first
- traefik.http.services.viction-testnet-node-archive-leveldb-hash-ws.loadbalancer.server.port=8546
- traefik.http.routers.viction-testnet-node-archive-leveldb-hash-ws.service=viction-testnet-node-archive-leveldb-hash-ws
- traefik.http.routers.viction-testnet-node-archive-leveldb-hash.service=viction-testnet-node-archive-leveldb-hash
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-archive-leveldb-hash-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-archive-leveldb-hash-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-archive-leveldb-hash-ws.rule=Host(`$DOMAIN`) && (Path(`/viction-testnet-node-archive`) || Path(`/viction-testnet-node-archive/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.viction-testnet-node-archive-leveldb-hash-ws.rule=(Path(`/viction-testnet-node-archive`) || Path(`/viction-testnet-node-archive/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.viction-testnet-node-archive-leveldb-hash-ws.middlewares=viction-testnet-node-archive-leveldb-hash-stripprefix, ipallowlist
volumes: volumes:
viction-testnet-node-archive-leveldb-hash: viction-testnet-node-archive-leveldb-hash:

View File

@@ -29,7 +29,7 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' # --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services: services:
viction-testnet-node-client: viction-testnet-node:
image: ${VICTION_NODE_IMAGE:-buildonviction/node}:${VICTION_TESTNET_NODE_VERSION:-v2.4.7} image: ${VICTION_NODE_IMAGE:-buildonviction/node}:${VICTION_TESTNET_NODE_VERSION:-v2.4.7}
sysctls: sysctls:
# TCP Performance # TCP Performance
@@ -67,35 +67,24 @@ services:
logging: *logging-defaults logging: *logging-defaults
labels: labels:
- prometheus-scrape.enabled=false - prometheus-scrape.enabled=false
viction-testnet-node:
image: nginx
expose:
- '80'
environment:
PROXY_HOST: viction-testnet-node-client
RPC_PATH: ''
RPC_PORT: 8545
WS_PATH: ''
WS_PORT: 8546
restart: unless-stopped
depends_on:
- viction-testnet-node-client
networks:
- chains
volumes:
- ./nginx-proxy:/etc/nginx/templates
logging: *logging-defaults
labels:
- prometheus-scrape.enabled=false
- traefik.enable=true - traefik.enable=true
- traefik.http.middlewares.viction-testnet-node-pruned-leveldb-hash-stripprefix.stripprefix.prefixes=/viction-testnet-node - traefik.http.middlewares.viction-testnet-node-pruned-leveldb-hash-stripprefix.stripprefix.prefixes=/viction-testnet-node
- traefik.http.services.viction-testnet-node-pruned-leveldb-hash.loadbalancer.server.port=80 - traefik.http.services.viction-testnet-node-pruned-leveldb-hash.loadbalancer.server.port=8545
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.entrypoints=websecure} - ${NO_SSL:-traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.tls.certresolver=myresolver} - ${NO_SSL:-traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.rule=Host(`$DOMAIN`) && (Path(`/viction-testnet-node`) || Path(`/viction-testnet-node/`))} - ${NO_SSL:-traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.rule=Host(`$DOMAIN`) && (Path(`/viction-testnet-node`) || Path(`/viction-testnet-node/`))}
- ${NO_SSL:+traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.rule=Path(`/viction-testnet-node`) || Path(`/viction-testnet-node/`)} - ${NO_SSL:+traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.rule=Path(`/viction-testnet-node`) || Path(`/viction-testnet-node/`)}
- traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.middlewares=viction-testnet-node-pruned-leveldb-hash-stripprefix, ipallowlist - traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.middlewares=viction-testnet-node-pruned-leveldb-hash-stripprefix, ipallowlist
- traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.priority=50 # gets any request that is not GET with UPGRADE header
- traefik.http.routers.viction-testnet-node-pruned-leveldb-hash-ws.priority=100 # answers GET requests first
- traefik.http.services.viction-testnet-node-pruned-leveldb-hash-ws.loadbalancer.server.port=8546
- traefik.http.routers.viction-testnet-node-pruned-leveldb-hash-ws.service=viction-testnet-node-pruned-leveldb-hash-ws
- traefik.http.routers.viction-testnet-node-pruned-leveldb-hash.service=viction-testnet-node-pruned-leveldb-hash
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-pruned-leveldb-hash-ws.entrypoints=websecure}
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-pruned-leveldb-hash-ws.tls.certresolver=myresolver}
- ${NO_SSL:-traefik.http.routers.viction-testnet-node-pruned-leveldb-hash-ws.rule=Host(`$DOMAIN`) && (Path(`/viction-testnet-node`) || Path(`/viction-testnet-node/`)) && Headers(`Upgrade`, `websocket`)}
- ${NO_SSL:+traefik.http.routers.viction-testnet-node-pruned-leveldb-hash-ws.rule=(Path(`/viction-testnet-node`) || Path(`/viction-testnet-node/`)) && Headers(`Upgrade`, `websocket`)}
- traefik.http.routers.viction-testnet-node-pruned-leveldb-hash-ws.middlewares=viction-testnet-node-pruned-leveldb-hash-stripprefix, ipallowlist
volumes: volumes:
viction-testnet-node-pruned-leveldb-hash: viction-testnet-node-pruned-leveldb-hash: