docker-compose.mainnet.sample.yaml 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. services:
  2. spy:
  3. # Find latest Guardian images in https://github.com/wormhole-foundation/wormhole/pkgs/container/guardiand
  4. image: ghcr.io/wormhole-foundation/guardiand:v2.23.14
  5. command:
  6. - "spy"
  7. - "--nodeKey"
  8. - "/node.key"
  9. - "--spyRPC"
  10. - "[::]:7072"
  11. - "--bootstrap"
  12. - "/dns4/wormhole-mainnet-v2-bootstrap.certus.one/udp/8999/quic/p2p/12D3KooWQp644DK27fd3d4Km3jr7gHiuJJ5ZGmy8hH4py7fP4FP7"
  13. - "--network"
  14. - "/wormhole/mainnet/2"
  15. - "--logLevel"
  16. - "warn"
  17. price-service:
  18. # Find latest price service images https://gallery.ecr.aws/pyth-network/xc-server
  19. image: public.ecr.aws/pyth-network/xc-server:v3.0.8
  20. environment:
  21. SPY_SERVICE_HOST: "spy:7072"
  22. SPY_SERVICE_FILTERS: |
  23. [
  24. {
  25. "chain_id": 1,
  26. "emitter_address": "6bb14509a612f01fbbc4cffeebd4bbfb492a86df717ebe92eb6df432a3f00a25"
  27. },
  28. {
  29. "chain_id": 26,
  30. "emitter_address": "f8cd23c2ab91237730770bbea08d61005cdda0984348f3f6eecb559638c0bba0"
  31. }
  32. ]
  33. REST_PORT: "4200"
  34. PROM_PORT: "8081"
  35. READINESS_SPY_SYNC_TIME_SECONDS: "5"
  36. READINESS_NUM_LOADED_SYMBOLS: "280"
  37. LOG_LEVEL: warning
  38. WORMHOLE_CLUSTER: mainnet
  39. healthcheck:
  40. test:
  41. [
  42. "CMD",
  43. "wget",
  44. "--no-verbose",
  45. "--tries=1",
  46. "--spider",
  47. "http://localhost:4200/ready",
  48. ]
  49. start_period: 20s
  50. depends_on:
  51. - spy
  52. price-pusher:
  53. # Use this to build the price pusher from source. A dependency of the pusher docker
  54. # image is the pyth-crosschain monorepo lerna docker image. Build lerna image
  55. # using the following command from the repo root:
  56. # `docker buildx build -f Dockerfile.lerna -t lerna .`
  57. #
  58. # Please note that the docker build from source only works in x86_64 platforms
  59. # and doesn't work on arm platforms (like Apple M1/M2).
  60. #
  61. # build:
  62. # context: .
  63. # Replace <version> with the latest released image of the price pusher from here:
  64. # https://gallery.ecr.aws/pyth-network/xc-price-pusher
  65. image: public.ecr.aws/pyth-network/xc-price-pusher:v<version>
  66. restart: always
  67. command:
  68. - "--"
  69. - "evm"
  70. - "--endpoint"
  71. # Replace this with RPC endpoint URL for the EVM network.
  72. - "https://bsc-dataseed2.binance.org"
  73. - "--mnemonic-file"
  74. - "/mnemonic"
  75. - "--pyth-contract-address"
  76. - "0xd7308b14BF4008e7C7196eC35610B1427C5702EA"
  77. - "--price-service-endpoint"
  78. - "http://price-service:4200"
  79. - "--price-config-file"
  80. - "/price_config"
  81. configs:
  82. - mnemonic
  83. - price_config
  84. depends_on:
  85. price-service:
  86. condition: service_healthy
  87. configs:
  88. mnemonic:
  89. file: ./path/to/mnemonic.txt # Replace this with the path to the mnemonic file
  90. price_config:
  91. file: ./price-config.mainnet.sample.yaml # Replace this with the path to the price configuration file