colossus.Dockerfile 989 B

1234567891011121314151617181920212223242526272829303132
  1. FROM --platform=linux/x86-64 node:14 as builder
  2. WORKDIR /joystream
  3. COPY . /joystream
  4. RUN yarn
  5. RUN yarn workspace @joystream/types build
  6. RUN yarn workspace storage-node-v2 build
  7. # Use these volumes to persist uploading data and to pass the keyfile.
  8. VOLUME ["/data", "/keystore"]
  9. # Required variables
  10. ENV WS_PROVIDER_ENDPOINT_URI=ws://not-set
  11. ENV COLOSSUS_PORT=3333
  12. ENV QUERY_NODE_HOST=not-set
  13. ENV WORKER_ID=not-set
  14. # - set external key file using the `/keystore` volume
  15. ENV ACCOUNT_KEYFILE=
  16. ENV ACCOUNT_PWD=
  17. # Optional variables
  18. ENV SYNC_INTERVAL=1
  19. ENV ELASTIC_SEARCH_HOST=
  20. # - overrides account key file
  21. ENV ACCOUNT_URI=
  22. # Colossus node port
  23. EXPOSE ${COLOSSUS_PORT}
  24. WORKDIR /joystream/storage-node-v2
  25. ENTRYPOINT yarn storage-node server --queryNodeHost ${QUERY_NODE_HOST} --port ${COLOSSUS_PORT} --uploads /data --worker ${WORKER_ID} --apiUrl ${WS_PROVIDER_ENDPOINT_URI} --sync --syncInterval=${SYNC_INTERVAL} --keyFile=${ACCOUNT_KEYFILE} --elasticSearchHost=${ELASTIC_SEARCH_HOST}