docker-compose-with-storage.yml 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. version: '3'
  2. services:
  3. ipfs:
  4. image: ipfs/go-ipfs:latest
  5. ports:
  6. - '127.0.0.1:5001:5001'
  7. - '127.0.0.1:8080:8080'
  8. volumes:
  9. - ipfs-data:/data/ipfs
  10. entrypoint: ''
  11. command: |
  12. /bin/sh -c "
  13. set -e
  14. /usr/local/bin/start_ipfs config profile apply lowpower
  15. /usr/local/bin/start_ipfs config --json Gateway.PublicGateways '{\"localhost\": null }'
  16. /sbin/tini -- /usr/local/bin/start_ipfs daemon --migrate=true
  17. "
  18. chain:
  19. image: joystream/node
  20. build:
  21. context: .
  22. dockerfile: joystream-node.Dockerfile
  23. ports:
  24. - '127.0.0.1:9944:9944'
  25. volumes:
  26. - chain-data:/data
  27. command: --dev --ws-external --base-path /data
  28. # colossus exits immediately if it cannot connect to joystream node
  29. # some workarounds... https://docs.docker.com/compose/startup-order/
  30. # Better option is to have colossus retry when starting up
  31. colossus:
  32. image: joystream/apps
  33. restart: on-failure
  34. depends_on:
  35. - "chain"
  36. - "ipfs"
  37. build:
  38. context: .
  39. dockerfile: apps.Dockerfile
  40. ports:
  41. - '127.0.0.1:3001:3001'
  42. command: colossus --dev --ws-provider ws://chain:9944 --ipfs-host chain
  43. environment:
  44. - DEBUG=*
  45. volumes:
  46. ipfs-data:
  47. driver: local
  48. chain-data:
  49. driver: local