setup.sh 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #!/bin/bash
  2. fw_depends dart nginx
  3. pub upgrade
  4. #
  5. # start dart servers
  6. #
  7. current=9001
  8. end=$(($current+$CPU_COUNT))
  9. while [ $current -lt $end ]; do
  10. dart server.dart -a 127.0.0.1 -p $current -d ${CPU_COUNT} &
  11. let current=current+1
  12. done
  13. #
  14. # create nginx configuration
  15. #
  16. conf+="worker_processes ${CPU_COUNT};\n"
  17. conf+="error_log /dev/null error;\n"
  18. conf+="events {\n"
  19. conf+="\tworker_connections 1024;\n"
  20. conf+="}\n"
  21. conf+="http {\n"
  22. conf+="\taccess_log off;\n"
  23. conf+="\tinclude ${NGINX_HOME}/conf/mime.types;\n"
  24. conf+="\tdefault_type application/octet-stream;\n"
  25. conf+="\tsendfile on;\n"
  26. conf+="\tupstream dart_cluster {\n"
  27. current=9001
  28. end=$(($current+$CPU_COUNT))
  29. while [ $current -lt $end ]; do
  30. conf+="\t\tserver 127.0.0.1:${current};\n"
  31. let current=current+1
  32. done
  33. conf+="\t\tkeepalive ${CPU_COUNT};\n"
  34. conf+="\t}\n"
  35. conf+="\tserver {\n"
  36. conf+="\t\tlisten 8080;\n"
  37. conf+="\t\tlocation / {\n"
  38. conf+="\t\t\tproxy_pass http://dart_cluster;\n"
  39. conf+="\t\t\tproxy_http_version 1.1;\n"
  40. conf+="\t\t\tproxy_set_header Connection \"\";\n"
  41. conf+="\t\t}\n"
  42. conf+="\t}\n"
  43. conf+="}"
  44. #
  45. # write nginx configuration to disk
  46. #
  47. echo -e $conf > nginx.conf
  48. nginx -c $(pwd)/nginx.conf &